Parte I: Introducción al Java 2 Enterprise Edition

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Parte I: Introducción al Java 2 Enterprise Edition"

Transcripción

1 Parte I: Introducción al Java 2 Enterprise Edition Ignacio Ramos Zapata Departamento de Ingeniería Telemática Universidad Carlos III de Madrid [email protected]

2 Introducción Contenido Evolución de las aplicaciones Web Arquitecturas cliente-servidor y multi-tier Integración de aplicaciones corporativas: la plataforma Java 2, Enterprise Edition (J2EE) Diagramas de clases en UML 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 2

3 Requisitos de las aplicaciones empresariales Almacenamiento y acceso de datos (Back-end integration): empleo de sistemas de bases de datos (DBMS), conexión a la base de datos, representación de los datos en la base de datos Mapping de datos y persistencia: representación de los datos en los programas (clases) y correspondencia (mapping) con su representación en la base de datos, actualización de la base de datos tras cambios por el programa Consistencia de datos: control de acceso concurrente a los datos, monitores de transacción Interacción con el usuario: autentificación, control de acceso, coordinación de accesos concurrentes Acceso a datos comunes: aislamiento de los distintos accesos, cache de datos 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 3

4 Requisitos de las aplicaciones empresariales Performance: tiempo de respuesta, interacción eficiente entre los distintos componentes Escalabilidad: posibilidad de incorporar nuevos servidores, distribución de carga Disponibilidad: seguridad frente a caídas de la aplicación (ideal disponibilidad 24 x 7), sistemas de tolerancia a fallos, clustering de servidores y datos Diseño software: mantenibilidad y portabilidad? modularidad, diseño en niveles, reducción de dependencias externas (por ejemplo, en la base de datos) 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 4

5 Evolución de las aplicaciones Web - Contenido estático Las organizaciones pretenden ofrecer información a tantos clientes como sea posible Gracias a la web, se puede mostrar información en páginas HTML estáticas almacenadas en el File System 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 5

6 Evolución de las aplicaciones Web - CGIs Extensiones (plug-ins) a los servidores Web que invocan aplicaciones de servidor Scripts CGI-BIN: No proporcionan encapsulación estructurada de los procesos y entidades de negocio Difíciles de desarrollar, mantener y gestionar Mezclan la lógica de negocio con la lógica de presentación Difícil mantenimiento de las reglas de negocio (distribuidas por varios cgi-bins en varios servidores) 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 6

7 Evolución de las aplicaciones Web - Applets Usando páginas HTML estáticas, los usuarios ven páginas pasivas que no cambian Usando Applets Java u otros programas en el lado cliente se pueden producir contenidos dinámicos 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 7

8 Evolución de las aplicaciones Web - Servlets Los applets no pueden acceder directamente a la información de los back-end systems El Web Container puede proporcionar componentes en el servidor (p.e. Servlets) para generar contenidos dinámicos 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 8

9 Evolución de las aplicaciones Web - JSPs Pobre separación entre lógica de negocio y lógica de presentación Esta separación se mejora con las JSPs y los JavaBeans 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 9

10 Evolución de las aplicaciones Web - EJBs EJBs: Se puede acceder a ellos remotamente a través de la red Encapsulan reglas de negocio, lógica específica de aplicación y acceso a datos Pueden ser usados por diferentes aplicaciones de manera concurrente Representan un repositorio central de lógica de negocio 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 10

11 Evolución de las aplicaciones Web - Escalabilidad Las aplicaciones empresariales suelen requerir alta disponibilidad Incremento en el rendimiento a medida que crece el negocio Estos dos requerimientos se pueden alcanzar incrementando el nº de servidores: Para proporcionar redundancia en el sistema Compartiendo la carga para aumentar el rendimiento 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 11

12 El patrón MVC: Model-View-Controller Es un patrón para el diseño de aplicaciones Ampliamente extendido como un concepto clave en el desarrollo de aplicaciones J2EE Aporta grandes beneficios (veremos más adelante) Facilita la reutilización de código Reduce el tiempo de desarrollo The Model Representa los datos y la lógica de negocio No contiene información acerca de la interfaz de usuario The View La interfaz de usuario - aquello que ve el usuario y a lo que puede responder Representa una ventana dentro del modelo The Controller Conecta el modelo y la vista Se usa como comunicación entre el modelo y la vista En ocasiones aparece una cuarta capa de persistencia - que se añade al patrón 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 12

13 MVC Aplicación J2EE 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 13

14 Model-View-Controller (MVC) 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 14

15 MVC - Beneficios Promueve la reutilización de código El propósito del modelo es el de proporcionar la lógica de negocio y de acceso a la información desde un único lugar Esta lógica puede ser reusada por múltiples aplicaciones al mismo tiempo sin necesidad de ningún código adicional Reduce el tiempo de desarrollo El Model, el View y el Controller de pueden desarrollar en paralelo Facilita el mantenimiento El View puede cambiar sin afectar al Model En una página web se puede poner un gráfico en lugar de una tabla sin que afecte al Model El Model puede cambiar sin afectar al View La forma de calcular la prima de un seguro podría cambiar manteniendo la interfaz en la lógica de negocio Los datos pueden cambiar sin afectar al View o al Model 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 15

16 Arquitecturas para aplicaciones empresariales Las aplicaciones complejas basadas en componentes se subdividen en niveles lógicos Cada nivel cubre un área de tareas y puede estar compuesto de una o varias partes La división en niveles es una abstracción lógica 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 16

17 Arquitecturas cliente/servidor Reparto funcional y físico de la aplicación en dos niveles 1. Parte del cliente, en el ordenador del usuario: Elementos de un programa clásico: lógica de ejecución, preparación y presentación de información, interacción con el usuario 2. Parte del servidor: Datos de negocio (en una base de datos o, en general, en el Enterprise Information System (EIS) ) Cliente y servidor están débilmente acoplados y se comunican solamente mediante mensajes La solicitud de servicio (iniciación de la comunicación) proviene siempre del cliente. El servidor reacciona mediante una respuesta Gran parte de la aplicación corre en el lado del cliente ( Fat Client )? modelo descentralizado 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 17

18 Arquitecturas cliente/servidor Nivel Cliente Nivel Servidor Cliente Servidor Fat client Lógica de negocio Datos 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 18

19 Inconvenientes arquitectura cliente/servidor En general, falta de escalabilidad Problemas de integridad en la base de datos Alta carga en la red: Gran número de pasos de comunicación necesarios Cantidad de resultados devueltos por la base de datos mayor de lo necesario Costosa distribución y actualización del software (cientos o miles de clientes) El diseñador de la aplicación precisa un conocimiento profundo de muchas áreas críticas Control de transacciones Modelo de seguridad Acceso a datos eficiente 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 19

20 Arquitecturas multi-tier (multi-nivel) En las arquitecturas multi-tier, se añaden niveles (tiers) software adicionales que se encargan de realizar ciertas tareas críticas Los Fat client se convierten en Thin client Los niveles intermedios extienden la responsabilidad del lado del servidor Aunque pueden estar situados en ordenadores o sistemas independientes Cada nivel comunica sólo con los niveles contiguos a través de interfaces claramente definidas 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 20

21 Ejemplo de distribución básica multi-nivel Nivel cliente (Client tier): Interfaz de usuario e interacción con el usuario (aplicaciones o applets Java, o páginas Web) Nivel medio (Middle tier): Servidor de aplicaciones: parte principal de la aplicación (lógica de la aplicación y de negocio, preparación de la información para el usuario) Procesado de datos basado en transacciones Acceso seguro Middleware: software especializado para la realización de determinadas tareas: Monitores, sistemas de nombres, sistemas de colas de mensajes, etc. Procesado de la presentación, por ejemplo Web-servers Nivel de datos (Back-end tier): Bases de datos o Enterprise Information Systems Responsable de la administración, acceso rápido y persistencia de los datos 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 21

22 Arquitecturas multi-nivel (multi-tier) Nivel Cliente Nivel Medio Nivel EIS Thin client Cliente Lógica de negocio Servidor Servicios Datos 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 22

23 Arquitectura tradicional en tres niveles Nivel Cliente Nivel Medio Nivel EIS Servidor Lógica de presentación Lógica de negocio Datos 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 23

24 Arquitectura tradicional en tres niveles El mivel medio aumenta la escalabilidad reutilizando recursos mejora rendimiento Mejora la seguridad y gestión de aplicación Problemas: Complejidad (distribución, multithreading, seguridad) Falta de portabilidad (distintas APIs) Soporte limitado (distintos protocolos, herramientas, vendedores) Incompatibilidad con la Web 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 24

25 Ejemplo: arquitectura multi-nivel Nivel Cliente Thin client Windows Macintosh Unix Java Browser Nivel Medio Presentación Lógica de negocio Componente banco Componente cuenta cliente Componente movimiento Driver base de datos Conector Nivel Datos Back End SAP/R3 server DBMS server Sevicio transacciones Servidor Web Servidor Aplicación 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 25

26 Ventajas de las arquitecturas multi-nivel Las partes críticas de la aplicación se encuentran en el nivel medio, más cercanos a nivel de datos? acceso más eficiente Sólo los datos necesarios son transferidos al cliente? menor carga de red Problema: al aumentar el número de niveles aumenta el número de comunicaciones, aumentando el tiempo de respuesta Mayor flexibilidad y escalabilidad. Además: Menores costes de instalación Facilidad en el cambio de la base de datos Aislamiento frente a cambios Seguridad Administración central de recursos Localización de fallos 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 26

27 Java 2 Platform, Enterprise Edition (J2EE) Colección de especificaciones y directivas de programación para facilitar el desarrollo de aplicaciones de servidor distribuidas multi-nivel, alineada fuertemente con Internet Un poco de historia 1996: Java Development Kit (JDK) 1.02: colección ordenada de bibliotecas de clases y paquetes 1999: JDK 1.2? Java 2 Platform: adicional al JDK, paquetes opcionales para mensajes, generación dinámica de páginas Web o programas de en Java. Dividida en 3 ediciones: Java 2 Platform, Standard Edition (J2SE): contiene el JDK actual y las APIs estándar. Desarrollo de aplicaciones de Desktop y applets Java 2 Platform, Enterprise Edition (J2EE): basada en J2SE, extiende el lado del servidor. Version 1.3, 3er Trimestre Java 2 Platform, Micro Edition (J2ME): especial para móviles, pagers, palmtops (embedded systems) 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 27

28 Elementos de la especificación J2EE J2EE Platform: estándar representado por un conjunto de APIs y directivas, soportadas por un servidor de aplicación (java.sun.com/j2ee/download.html) J2EE Blueprints: consejos para el desarrollo de aplicaciones J2EE, patrones de diseño y un ejemplo de aplicación (java.sun.com/blueprints/) J2EE Server: implementación de referencia de un servidor de aplicaciones para J2EE, incluido en J2EE SDK (java.sun.com/j2ee/download.html) J2EE Testsuite: J2EE Compatibility Testsuite (CTS), tests de compatibilidad (java.sun.com/j2ee/compatibility.html) 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 28

29 Componentes J2EE J2EE define cuatro tipos de componentes Tienen que estar soportados por cualquier producto J2EE El despliegue puede ser gestionado usando "deployment descriptors" (excepto applets) Aplicaciones cliente Programas Java que se ejecuten en una máquina cliente desde los que se puede acceder a otros componentes J2EE Applets Componentes gráficos que se ejecutan tipicamente en un browser Pueden proporcionar una avanzada interfaz de usuario para otros componentes J2EE Componentes Web Servlets y JSPs Enterprise Java Beans Componenetes distribuidos y transaccionales que comtienen lógica de negocio y de acceso a datos 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 29

30 Containers (contenedores) Ofrecen el entorno de ejecución para todos los componentes de aplicación Proporcionan una vista uniforme de los servicios solicitados en la especificación Herramientas adicionales (Deployment Tools) para la instalación y configuración de componentes (también en tiempo de ejecución) Las tareas principales de los componentes del lado del servidor son la gestión de recursos y del ciclo de vida Applet Container Applets Applic. Client Container (J2SE) Servlet/JSP Container JSP Tools ServletEngine JSP: JSP: JSP: Servicios EJB Container Enterprise JavaBeans Gestión recursos Servicios 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 30

31 Arquitectura J2EE 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 31

32 Servidor de aplicaciones Es un sistema de soporte para componentes de servidor Proporciona un entorno de desarrollo para los componentes, que a su vez proporcionan la lógica de negocio Los componentes de servidor utilizan los servicios del servidor de aplicaciones Los elementos constitutivos del servidor de aplicaciones se denominan también componentes y pueden instalarse y administrase de forma independiente Tareas de infraestructura: Instanciación de componentes Comunicación Sincronización de acceso concurrentes Preparación de un entorno seguro Disponibilidad Seguridad de transacciones 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 32

33 Enterprise JavaBeans Enterprise JavaBeans (EJB) es una completa especificación de arquitectura para componentes de servicio Permite el desarrollo en Java de aplicaciones multi-nivel, basadas en componentes y orientadas a transacciones, que se apoyan en servidores de aplicación y otros productos middleware Objetivos de la arquitectura de componentes EJB: Facilitar el desarrollo de aplicaciones, concentrándose en la lógica de negocio: desarrollo, aplicación y aspectos de tiempo de ejecución Independencia del proveedor de componentes mediante la especificación de interfaces Independencia de la plataforma gracias al principio: Write Once Run Anywhere (WORA) y a su realización en Java Compatibilidad con Java-APIs existentes, con sistemas de servidor de terceros y con protocolos CORBA 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 33

34 J2EE Muti-Tier Model 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 34

35 Servicios J2EE Los servicios J2EE estándard incluyen lo siguiente: HTTP (Hipertext Transfer Protocol) RMI-IIOP (Remote Method Invocation over the Internet Inter- ORB Protocol) Java IDL (Java Interface Definition Language) JTA (Java Transaction API) JDBC JMS (Java Message Service) JavaMail JAF (JavaBeans Activation Framework) JNDI (Java Naming and Directory Interface) JAXP (Java API for XMl Parsing) JCA (J2EE Connector Architecture) JAAS (Java Authentication and Authoritation Service) 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 35

36 Servicios J2EE Servicio de nombres: acceso a componentes y recursos mediante nombres lógicos portabilidad y mantenibilidad Java Naming and Directory Interface (JNDI) Servicio de transacciones: ejecución de una serie de pasos de forma atómica y aislada concepto declarativo de límite de transacción mediante descriptores posibilidad de control de transacción programada mediante un interfaz de programación Java Transaction Service (JTS) Servicio de seguridad: directivas de seguridad para recursos protegidos control de acceso en J2EE en dos pasos: autentificación y autorización realización declarativa o programada Java Athentication & Authorization Service (JAAS) 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 36

37 Servicios J2EE Persistencia: almacenamiento persistente de objetos y estados de objetos, normalmente realizado en bases de datos relacionales JDBC Comunicación: distintas técnicas de comunicación, proporcionadas por el proveedor de servicio de aplicación o de containers Comunicaciones Web: TCP/IP, UDP/IP, HTTP 1.0 y HTTPS (con SSL adicionalmente) Procesado de objetos distribuidos: RMI (Remote Method Invocation), basado en Java Remote Method Protocol (JRMP). Extensión a RMI que soporta además el protocolo CORBA-IIOP para interoperabilidad entre J2EE y sistemas CORBA. Servicios de configuración y administración: empaquetamiento, instalación y configuración flexible de componentes y la administración de aplicaciones descripción mediante esquemas XML de las características de servidores, containers, aplicaciones, componentes y servicios Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 37

38 Convención gráfica UML 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 38

39 Clases en UML nombre Ventana atributos origen dimensión abre() cierra() mueve() operaciones 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 39

40 Nombres de clase Toda clase tiene un nombre que la distingue del resto de clases en el ámbito del modelo Nombre de clase = [paquete::]nombre-simple Ejemplos: Negocio::Cliente,SensorTemperatura El nombre de la clase es una cadena de cualquier longitud que contiene letras y números y signos de puntuación (salvo ::) Habitualmente los nombres de clases son sustantivos o frases con esa función gramatical Cliente SensorTemperatura Display Java::awt:applet Contrato Libro Fichero 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 40

41 Atributos de clase Un atributo representa una propiedad característica compartida por todos los objetos de la clase. Una clase puede tener cualquier número de atributos: Atributo = nombre[:tipo][=valorpordefecto] Ejemplos: fechanacimiento, estatura : float El nombre de un atributo es una cadena de cualquier longitud que contiene letras y números Habitualmente los nombres de atributo son sustantivos o frases con esa función gramatical Rectángulo altura: Float base: Float relleno: Boolean = false 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 41

42 Operaciones Una operación es un servicio básico ofrecido por los objetos de una clase: Operación = nombre([arg:tipo],...)[:tiporetorno] Ejemplo = new(), new(origen:punto) La implementación concreta que una clase hace de una operación se llama método Con frecuencia la invocación de una operación provoca un cambio de estado en el objeto Habitualmente los nombres de operación son verbos o frases con esa función gramatical Rectángulo new() mueve(destino: Punto) calculaarea(): Float 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 42

43 Responsabilidades Una responsabilidad es un contrato u obligación de una clase en el contexto de un modelo Atributos y operaciones son las características de la clase a través de las cuales las responsabilidades se llevan a cabo Expresión informal de la semántica mediante texto libre La responsabilidad global del modelo debe repartirse de forma equilibrada entre sus clases Algunos métodos ayudan a determinar las responsabilidades de las clases: e.g. CRC Rectángulo Responsabilidades -Representación gráfica de rectángulo a partir de su origen y dimensiones -Cálculo de valores geométricos como área, perímetro,... Comportamiento extra (adorno). También pueden utilizarse notas de comentario 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 43

44 Relaciones Los sistemas OO se estructuran en forma de abstracciones (clases) interrelacionadas. En UML hay tres tipos de interrelaciones básicas: Dependencia: Expresa una relación de uso entre clases Generalización: Relaciona clases generales con clases especializadas a partir de ellas o, viceversa, clases generalizadas a partir de características comunes de clases más concretas (herencia) Asociación: Relaciones estructurales genéricas entre clases. Entidades Dependencia Generalización Asociación Realización 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 44

45 Dependencia Relación de dependencia entre dos elementos estructurales de UML que establece que un cambio en uno de ellos (el independiente) puede afectar al otro (el dependiente) puede afectar al otro (el dependiente). La relación suele ser unidireccional. La interpretación más frecuente es la de relación de uso entre clases: una clase utiliza a otra como argumento en la signatura de una operación. UML distingue otros tipos de dependencia: Derivación Instanciación Refinamiento, etc. Applet MiApplet paint(g:graphics) Dependencia (uso) Graphics 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 45

46 Generalización Relación entre una abstracción general (superclase) y una abstracción más concreta del mismo tipo (subclase). Taxonomía ejemplo: empleado, secretario, informático, directivo,... Una clase puede tener cero, una (herencia simple) o más superclases (herencia múltiple) Una clase sin superclases es una clase raíz Una clase sin subclases es una clase hoja Figura paint(g:graphics) Línea extremos Elipse semiejes area() perímetro() Polígono vértices mueve() perímetro() 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 46

47 Asociación Relación estructural entre abstracciones que implica interconexión o enlace entre los objetos representados por las abstracciones: Una biblioteca almacena libros Es una relación, por lo general, simétrica Las asociaciones más comunes son las binarias, pero las hay n- arias La representación básica es una línea enlazando las clases, pero puede incluir otros adornos: nombre, roles, multiplicidad y agregación Biblioteca Nombre almacena > Dirección de nombre Libro 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 47

48 Asociación Nombre. Describe la asociación. Normalmente un verbo. Puede incluir dirección de lectura Rol. Describe el papel específico que una clase juega en una asociación. Una clase puede jugar distintos roles en diferentes asociaciones Multiplicidad. Especifica por cada clase de la asociación el número de objetos de la clase opuesta que se relacionan con un solo objeto de dicha clase a través de la asociación: Uno (1), cero o uno (0..1), tres (3), muchos (*), al menos uno (1..*), dos, cuatro o cinco (2,4,5),... Multiplicidad Persona 1..* Trabaja para > * empleado empleador Empresa Roles 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 48

49 Agregación Tipo especial de asociación que representa la relación es parte de. Es decir, una de las clases es una abstracción compuesta de otras que son sus diferentes partes (componentes) Si la relación de agregación es fuerte, de tal forma que los componentes no pueden existir independientemente, se denomina composición La agregación no implica diferencia semántica respecto de una asociación genérica. La composición liga la existencia de los componentes a la de la clase compuesta Clase agregada Cadena 1 agregación Clase compuesta Proceso 1 composición Clase componente 2..* Eslabón Clase componente * Hilo 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 49

50 Diagramas de clases Son los diagramas más frecuentes en el modelado OO. Constan de clases, interfaces y colaboraciones y sus relaciones En sistemas complejos los elementos lógicamente relacionados del diagrama se agrupan en paquetes Representan la visión estática del modelo o diseño de un sistema, dando soporte a la formalización de requisitos funcionales Se utilizan para el diseño de esquemas lógicos de BD (superconjunto de los diagramas E-R) 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 50

51 Ejemplo de diagramas de clases Escuela Departamento 0..1 nombre: Nombre tiene nombre: Nombre nuevoestudiante() buscaestudiante() listadepartamentos() 1..* 1 1..* nuevoprofesor() elimprofesor() listaprofesores() 1..* organiza 0..1 asignado a {subset} * matriculado en 1..* 1..* 0..1 director Estudiante Curso Profesor nombre: Nombre matrícula: Numero asiste * * nombre: Nombre código: Numero imparte * 1..* nombre: Nombre regper: NRP 2005 Software de Comunicaciones (c) UC3M Natividad Martínez, Ignacio Ramos Zapata 51

Panorámica de la asignatura

Panorámica de la asignatura Arquitecturas típicas. Mario Muñoz Organero Departamento de Ingeniería Telemática http://www.it.uc3m.es/mario Panorámica de la asignatura RED Comunicaciones Servidores información Intercambio de datos

Más detalles

Tema 1. Introducción a Java EE

Tema 1. Introducción a Java EE Objetivos del tema Propiedades de las aplicaciones empresariales El Modelo Cliente/Servidor Presentar la Plataforma Java Presentar Java EE y otras tecnologías horizontales Tema 1. Introducción a Java EE

Más detalles

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

JAVA ENTERPRISE EDITION (J2EE) ARQUITECTURA TECNOLOGÍAS (1/2) (L1) TECNOLOGÍAS (1/2) (L1) EJB ( Enterprise Java Beans ) JSP ( Java Server Pages ) JNDI ( Java Naming and Directory Interface ) JDBC ( Java Data Base Connectivity ) Java Mail JSF ( Java Server Faces ) TECNOLOGÍAS

Más detalles

Introducción a las arquitecturas de componentes y a Java EE

Introducción a las arquitecturas de componentes y a Java EE Introducción a las arquitecturas de componentes y a Java EE Autores: Dirección: Versión: 1.0 Simon Pickin Natividad Martínez Madrid Pablo Basanta Val Departamento de Ingeniería Telemática Universidad Carlos

Más detalles

JAVA EE 5. Arquitectura, conceptos y ejemplos.

JAVA EE 5. Arquitectura, conceptos y ejemplos. JAVA EE 5. Arquitectura, conceptos y ejemplos. INTRODUCCIÓN. MODELO DE LA APLICACIÓN JEE5. El modelo de aplicación Java EE define una arquitectura para implementar servicios como lo hacen las aplicaciones

Más detalles

JavaEE. www.javasoft.com

JavaEE. www.javasoft.com JavaEE Java Enterprise Edition www.javasoft.com Por qué Java en el servidor? Ventajas Independencia de la plataforma portabilidad Gran conjunto de APIs Reusabilidad y modularidad Seguro en la ejecución

Más detalles

Arquitecturas Empresariales y la plataforma J2EE

Arquitecturas Empresariales y la plataforma J2EE UNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INGENIERÍA TELEMÁTICA SOFTWARE DE COMUNICACIONES (I.T.T.T) Arquitecturas Empresariales y la plataforma J2EE Pablo Basanta Val Florina Almenares Mendoza

Más detalles

Aplicaciones web construidas a base de componentes:

Aplicaciones web construidas a base de componentes: Java EE Aplicaciones Web/Sistemas Web Juan Pavón Mestras Dep. Ingeniería del Software e Inteligencia Artificial Facultad de Informática Universidad Complutense Madrid Material bajo licencia Creative Commons

Más detalles

Arquitectura. 1.- Aplicaciones Web. Definición. Arquitectura clásica. Contenidos. 1.- Aplicaciones Web

Arquitectura. 1.- Aplicaciones Web. Definición. Arquitectura clásica. Contenidos. 1.- Aplicaciones Web Arquitectura 1.- Aplicaciones Web Definición Contenidos 1.- Aplicaciones Web 2.- Arquitectura de aplicaciones Web Lo que distingue una aplicación Web de una mero sitio Web reside en la posibilidad que

Más detalles

Proyecto ELO-330 Administración Salas del Departamento de Electrónica RC1. Gerardo Lecaros Felipe Díaz

Proyecto ELO-330 Administración Salas del Departamento de Electrónica RC1. Gerardo Lecaros Felipe Díaz Proyecto ELO-330 Administración Salas del Departamento de Electrónica RC1 Gerardo Lecaros Felipe Díaz Problemática Petición de salas de forma tradicional Solución J2EE Java 2 Platform, Enterprise Edition

Más detalles

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

Curso de Java EE Todos los Derechos Reservados Global Mentoring 2012 Experiencia y Conocimiento para tu Vida 1 Todos los Derechos Reservados Global Mentoring 2012 Experiencia y Conocimiento para tu Vida 1 Vivimos en un mundo globalizado, donde la eficiencia y productividad de las empresas es un factor crucial para

Más detalles

Capitulo III. Diseño del Sistema.

Capitulo III. Diseño del Sistema. Capitulo III. Diseño del Sistema. Para el desarrollo del sistema en la presente tesis se utilizo el paradigma orientado a objetos utilizando el lenguaje Java en su versión 1.2. Por medio de este lenguaje

Más detalles

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos 2.1. Principios básicos del Modelado de Objetos UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos Hoy en día muchos de los procesos que intervienen en un negocio o empresa y que resuelven

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Modelado de casos de uso (I) Un caso de uso es una técnica de modelado usada para describir lo que debería hacer

Más detalles

SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO

SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO Introducción:...1 Service Oriented Architecture...2 Elementos de una Service Oriented Architecture...2 Application frontends...2 Servicios...2 Contrato:...3

Más detalles

Anexo 4 Documento de Arquitectura

Anexo 4 Documento de Arquitectura Anexo 4 Documento de Arquitectura 1. Introducción El anexo se describe el propósito y alcance referentes al proyecto correspondiente al documento de arquitectura. 2. Propósito El propósito del anexo de

Más detalles

[CASI v.0109] Pág. 1

[CASI v.0109] Pág. 1 I. DATOS INFORMATIVOS Carrera Especialidad Curso Código Ciclo : Quinto Requisitos Duración Horas Semana : 08 horas Versión : v.0109 II. SUMILLA : COMPUTACIÓN E INFORMATICA : Ingeniería de Software : Lenguaje

Más detalles

Arquitectura de Software

Arquitectura de Software Arquitectura de Software (Estilos Arquitectónicos) Universidad de los Andes Demián Gutierrez Mayo 2011 1 Diseño Arquitectónico Diseño Arquitectónico Arquitectura del Software Estilos Arquitectónicos Frameworks

Más detalles

Notas técnicas de JAVA Nro. 7 Tip Breve

Notas técnicas de JAVA Nro. 7 Tip Breve Notas técnicas de JAVA Nro. 7 Tip Breve (Lo nuevo, lo escondido, o simplemente lo de siempre pero bien explicado) Tema: JAVA Basics: Diferencias conceptuales entre JavaBeans y Enterprise JavaBeans (EJB)

Más detalles

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

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo. GLOSARIO Actor: Un actor es un usuario del sistema. Esto incluye usuarios humanos y otros sistemas computacionales. Un actor usa un Caso de Uso para ejecutar una porción de trabajo de valor para el negocio.

Más detalles

Desarrollo de Software con

Desarrollo de Software con Desarrollo de Software con Antonio J. Vélez Q. Universidad del Valle Sede Palmira Contenido Modelo de Aplicaciones Java EE Arquitectura de las aplicaciones JEE Comunicación entre componentes Contenedores

Más detalles

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

Sistemas de Información Introducción a los Sistemas de Información: El Modelo Cliente/Servidor Sistemas de Información Introducción a los Sistemas de Información: El Modelo Cliente/Servidor Agradecimientos: por su contribución a la realización de estas transparencias: Jesus Villamor Lugo y Simon

Más detalles

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

La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la Servicios web Introducción Un servicio web es un conjunto de protocolos y estándares que sirven para intercambiar datos entre aplicaciones. Distintas aplicaciones de software desarrolladas en lenguajes

Más detalles

desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el

desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el Capitulo II. Análisis de herramientas y tecnologías de desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el lenguaje de Modelo de Objetos llamado UML (Unified

Más detalles

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

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio). 1 GLOSARIO A continuación se definen, en orden alfabético, los conceptos básicos que se han abordado a lo largo del desarrollo de la metodología para la gestión de requisitos bajo la Arquitectura Orientada

Más detalles

Introducción al Desarrollo de Aplicaciones Empresariales

Introducción al Desarrollo de Aplicaciones Empresariales Introducción al Desarrollo de Aplicaciones Empresariales Definición Java 2 Enterprise Edition: plataforma de desarrollo de aplicaciones para empresas, basado en EJBs. EJB (Enterprise Java Beans): especificación

Más detalles

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

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

Más detalles

Tema 5. Plataforma Java EE

Tema 5. Plataforma Java EE Tema 5. Plataforma Java EE SCS Sistemas Cliente/Servidor 4 o informática http://ccia.ei.uvigo.es/docencia/scs enero 2009 FJRP, FMBR 2008/09 ccia SCS 5.1 Introducción a Java EE Java EE (Java Enterprise

Más detalles

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas: SISTEMAS DISTRIBUIDOS DE REDES 1. SISTEMAS DISTRIBUIDOS Introducción y generalidades La computación desde sus inicios ha sufrido muchos cambios, desde los grandes equipos que permitían realizar tareas

Más detalles

DISEÑO DE COMPONENTES DE SOFTWARE *

DISEÑO DE COMPONENTES DE SOFTWARE * DISEÑO DE COMPONENTES DE SOFTWARE * NOTAS DEL CURSO Ingeniería de Software I DRA. MARIA DEL PILAR GÓMEZ GIL INAOEP * Resumen del capítulo 10 de libro de [Pressman 2010] V:18-11-2008 (c) P. Gomez-Gil, INAOE.

Más detalles

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

Patrones de Alto nivel: Patrones de Arquitectura Patrones de nivel medio: Patrones de Diseño Patrones de bajo nivel: Idioms Patrones Patrones Es una solución reusable de problemas comunes. Los patrones solucionan problemas que existen en muchos niveles de abstracción. desde el análisis hasta el diseño y desde la arquitectura

Más detalles

BackflipSD Modelo de Diseño

BackflipSD Modelo de Diseño BackflipSD Modelo de Diseño Historia de revisiones: Fecha Versión Descripción Autor 04/09/2012 1.0 Rodrigo Stecanella 16/09/2012 1.1 Rodrigo Stecanella 1 Contenido Historia de revisiones:...1 Introducción...3

Más detalles

Desarrollo y servicios web Sesión 18

Desarrollo y servicios web Sesión 18 Desarrollo y servicios web Sesión 18 Luisa Fernanda Rincón Pérez 2014-2 Qué son los patrones arquitectónicos? Definen la estructura de la solución al mas alto nivel. Por esto es lo primero que se tiene

Más detalles

Service Oriented Architecture

Service Oriented Architecture Programación Concurrente y Distribuida Ingeniería en Informática Service Oriented Architecture José Carlos Cortizo Pérez [email protected] http://www.esp.uem.es/jccortizo D. Sistemas Informáticos

Más detalles

Componentes de Integración entre Plataformas Información Detallada

Componentes de Integración entre Plataformas Información Detallada Componentes de Integración entre Plataformas Información Detallada Active Directory Integration Integración con el Directorio Activo Active Directory es el servicio de directorio para Windows 2000 Server.

Más detalles

http://www.cem.itesm.mx/extension/ms

http://www.cem.itesm.mx/extension/ms Diplomado Programación orientada a objetos con Java y UML Las empresas necesitan contar con sistemas de información modernos, ágiles y de calidad para alcanzar sus objetivos y ser cada vez más competitivos

Más detalles

Capítulo 2. Planteamiento del problema. Capítulo 2 Planteamiento del problema

Capítulo 2. Planteamiento del problema. Capítulo 2 Planteamiento del problema Capítulo2 Planteamientodelproblema 38 2.1Antecedentesycontextodelproyecto En lo que respecta a los antecedentes del proyecto, se describe inicialmente el contexto donde se utiliza el producto de software.

Más detalles

Generador GeneXus JAVA

Generador GeneXus JAVA Generador GeneXus JAVA Última actualización: 2009 Copyright Artech Consultores S. R. L. 1988-2009. Todos los derechos reservados. Este documento no puede ser reproducido en cualquier medio sin el consentimiento

Más detalles

Arquitectura cliente/servidor

Arquitectura cliente/servidor Departamento de Lenguajes y Sistemas Informáticos Arquitectura cliente/servidor Programación en Internet Curso 2007-2008 Índice Introducción Tipos de servidores Ventajas Desventajas Arquitectura de una

Más detalles

Proceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes:

Proceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes: PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes: 1. Proporcionar una guía de actividades para el trabajo en equipo. (Guía detallada para el desarrollo

Más detalles

Familia de Windows Server 2003

Familia de Windows Server 2003 Familia de Windows Server 2003 Windows Server 2003 está disponible en cuatro ediciones. Cada edición se ha desarrollado para una función de servidor específica, como se describe en la tabla siguiente:

Más detalles

Tema 5. Plataforma Java EE

Tema 5. Plataforma Java EE Tema 5. Plataforma Java EE SCS Sistemas Cliente/Servidor 4 o informática http://ccia.ei.uvigo.es/docencia/scs septiembre 2011 FJRP, FMBR 2008-2011 ccia SCS 5.1 Introducción a Java EE Java EE (Java Enterprise

Más detalles

INTRODUCCIÓN A JAVA. Índice

INTRODUCCIÓN A JAVA. Índice INTRODUCCIÓN A JAVA Índice Qué es Java? La plataforma Java 2 La Máquina Virtual de Java Características principales Qué ventajas tengo como desarrollador? Bibliografía 2 1 Qué es Java? La tecnología Java

Más detalles

Introducción. Componentes de un SI. Sistema de Información:

Introducción. Componentes de un SI. Sistema de Información: Introducción. Sistema de Información: Conjunto de elementos relacionados entre sí de acuerdo a ciertas reglas, que aporta a la organización la información necesaria para el cumplimiento de sus fines, para

Más detalles

Descripción de Arquitectura Repositorio de metadatos de componentes de software

Descripción de Arquitectura Repositorio de metadatos de componentes de software Descripción de Arquitectura Repositorio de metadatos de componentes de software 1. Introducción. 1.1. Propósito. 1.2. Alcance. 1.3. Definiciones. 1.4 Contexto. 1.5. Referencia. 2. Objetivos y restricciones

Más detalles

Curso de Spring Framework

Curso de Spring Framework Todos los Derechos Reservados Global Mentoring 2012 Experiencia y Conocimiento para tu Vida 1 Spring es un proyecto de código abierto (open source), originalmente creado por Rod Johnson y descrito en su

Más detalles

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS 4 ARQUITECTURA DE DISTRIBUCIÓN DE DATOS Contenido: Arquitectura de Distribución de Datos 4.1. Transparencia 4.1.1 Transparencia de Localización 4.1.2 Transparencia de Fragmentación 4.1.3 Transparencia

Más detalles

Seminario de Java. Contenido

Seminario de Java. Contenido Seminario de Java Programación Orientada a Objetos Curso 2006/2007 Contenido 1. Introducción 2. Primeros pasos con Java. El entorno Eclipse 3. La sintaxis del lenguaje Java 4. Clases y objetos 5. Cadenas

Más detalles

MACROPROCESO GESTIÓN TECNOLÓGICA

MACROPROCESO GESTIÓN TECNOLÓGICA Versión 1.0 Página 1 de 5 1. OBJETIVO Suministrar las fases para la puesta en producción de aplicaciones y sistemas de información desarrollados o adquiridos por el Instituto Colombiano de Bienestar Familiar

Más detalles

Windows Server 2012: Infraestructura de Escritorio Virtual

Windows Server 2012: Infraestructura de Escritorio Virtual Windows Server 2012: Infraestructura de Escritorio Virtual Módulo 1: Application Virtualization Módulo del Manual Autores: James Hamilton-Adams, Content Master Publicado: 5 de Octubre 2012 La información

Más detalles

Diagrama de Clases. Diagrama de Clases

Diagrama de Clases. Diagrama de Clases Diagrama de Clases 1 Diagrama de Clases El propósito de este diagrama es el de representar los objetos fundamentales del sistema, es decir los que percibe el usuario y con los que espera tratar para completar

Más detalles

Universidad de Colima Facultad de Ingeniería Mecánica y Eléctrica. Base de Datos I. Maestra: Martha E. Evangelista Salazar

Universidad de Colima Facultad de Ingeniería Mecánica y Eléctrica. Base de Datos I. Maestra: Martha E. Evangelista Salazar Universidad de Colima Facultad de Ingeniería Mecánica y Eléctrica Base de Datos I Maestra: Martha E. Evangelista Salazar Introducción a los conceptos de Bases de Datos a).- Definiciones básicas sobre bases

Más detalles

Capítulo VI. Conclusiones. En este capítulo abordaremos la comparación de las características principales y

Capítulo VI. Conclusiones. En este capítulo abordaremos la comparación de las características principales y Capítulo VI Conclusiones En este capítulo abordaremos la comparación de las características principales y de las ventajas cada tecnología Web nos ofrece para el desarrollo de ciertas aplicaciones. También

Más detalles

Técnico Superior en Programación con Java SE Standard Edition

Técnico Superior en Programación con Java SE Standard Edition Código: M087_04 Técnico Superior en Programación con Java SE Standard Edition Modalidad: Distancia Duración: 120 horas Objetivos: Este pack de materiales formativos proporcionará al alumnado la base que

Más detalles

Cursos PROGRAMACIÓN DE APLICACIONES CON JAVA

Cursos PROGRAMACIÓN DE APLICACIONES CON JAVA Cursos CIÓN DE APLICACIONES CON JAVA OBJETIVOS Los cursos ofrecen al alumno fundamentos muy sólidos en la Plataformas de desarrollo Java, no solo en aspectos concretos (lenguaje java, paquetes disponibles,

Más detalles

Autenticación Centralizada

Autenticación Centralizada Autenticación Centralizada Ing. Carlos Rojas Castro Herramientas de Gestión de Redes Introducción En el mundo actual, pero en especial las organizaciones actuales, los usuarios deben dar pruebas de quiénes

Más detalles

Curso: Programación con JAVA SE Estándar Edition.

Curso: Programación con JAVA SE Estándar Edition. Curso: Programación con JAVA SE Estándar Edition. Código: 1062 Familia Profesional: Programación. Acreditación: Formación reconocida a través de vías no formales Modalidad: Distancia Duración: 150 horas

Más detalles

Qué se entiende por diseño arquitectónico? Comprende el establecimiento de un marco de trabajo estructural básico para un sistema. Alude a la estructura general del software y el modo en que la estructura

Más detalles

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

Temario máster Java. Módulo 1 Fundamentals of the Java Programming Language. Duración: 40 horas Temario máster Java Módulo 1 Fundamentals of the Java Programming Language. Duración: 40 horas En este módulo se explicarán las características del lenguaje programación Java. Unidad 1 Entendiendo la tecnología

Más detalles

Tema 1. Introducción a JAVA

Tema 1. Introducción a JAVA Tema 1. Introducción a JAVA Historia Características Plataforma Java Entorno de desarrollo Ejemplo: Hola mundo Estructura general de un programa Java 1 Historia de Java (i) Surge en 1991: Sun Microsystems

Más detalles

TELECOMUNICACIONES Y REDES

TELECOMUNICACIONES Y REDES TELECOMUNICACIONES Y REDES Redes Computacionales I Prof. Cristian Ahumada V. Unidad V: Capa de Red OSI 1. Introducción. 2. Protocolos de cada Red 3. Protocolo IPv4 4. División de Redes 5. Enrutamiento

Más detalles

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web.

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web. Modulo I. Introducción a la Programación Web. 1.1 Servidor Web. Antes de analizar lo que es un servidor Web y llevara a cabo su instalación, es muy importante identificar diferentes elementos involucrados

Más detalles

Capítulo 5. Cliente-Servidor.

Capítulo 5. Cliente-Servidor. Capítulo 5. Cliente-Servidor. 5.1 Introducción En este capítulo hablaremos acerca de la arquitectura Cliente-Servidor, ya que para nuestra aplicación utilizamos ésta arquitectura al convertir en un servidor

Más detalles

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

Introducción a SOA (II) Huibert Aalbers Senior Certified Software IT Architect Introducción a SOA (II) Huibert Aalbers Senior Certified Software IT Architect IT Insight podcast Este podcast pertenece a la serie IT Insight Pueden suscribirse al podcast a través de itunes. El material

Más detalles

Novedades en Q-flow 3.02

Novedades en Q-flow 3.02 Novedades en Q-flow 3.02 Introducción Uno de los objetivos principales de Q-flow 3.02 es adecuarse a las necesidades de grandes organizaciones. Por eso Q-flow 3.02 tiene una versión Enterprise que incluye

Más detalles

Unidad III. Software para la administración de proyectos.

Unidad III. Software para la administración de proyectos. Unidad III Software para la administración de proyectos. 3.1 Herramientas de software para administrar proyectos. El software de administración de proyectos es un concepto que describe varios tipos de

Más detalles

Capitulo 5. Implementación del sistema MDM

Capitulo 5. Implementación del sistema MDM Capitulo 5. Implementación del sistema MDM Una vez que se concluyeron las actividades de análisis y diseño se comenzó la implementación del sistema MDM (Manejador de Documentos de MoProSoft). En este capitulo

Más detalles

Técnicas de Diseño CRM 1

Técnicas de Diseño CRM 1 Técnicas de Diseño CRM SAAT 2 Índice Descripción del Negocio... 3 Contexto... 3 Alcance... 3 Glosario... 5 Arquitectura propuesta... 7 Manejo de sesiones... 7 Implementación de persistencia y transaccionalidad...

Más detalles

Fundamentos del diseño 3ª edición (2002)

Fundamentos del diseño 3ª edición (2002) Unidades temáticas de Ingeniería del Software Fundamentos del diseño 3ª edición (2002) Facultad de Informática necesidad del diseño Las actividades de diseño afectan al éxito de la realización del software

Más detalles

OLIMPO Servidor Universal

OLIMPO Servidor Universal OLIMPO Servidor Universal Documento 20050714/01 Fecha Creación Julio 2005 Fecha Última Revisión Agosto 2007 Versión de documento 2.0 1/7 Visión Global Desde el año 1984, en IGT Microelectronics hemos ofrecido

Más detalles

Sistema de Mensajería Empresarial para generación Masiva de DTE

Sistema de Mensajería Empresarial para generación Masiva de DTE Sistema de Mensajería Empresarial para generación Masiva de DTE TIPO DE DOCUMENTO: OFERTA TÉCNICA Y COMERCIAL VERSIÓN 1.0, 7 de Mayo de 2008 CONTENIDO 1 INTRODUCCIÓN 4 2 DESCRIPCIÓN DE ARQUITECTURA DE

Más detalles

Facultad de Sistemas e Informática

Facultad de Sistemas e Informática Escuela Politécnica del Ejército Sede Latacunga Facultad de Sistemas e Informática Galarza Maira Tapia Cevallos Paulina DESARROLLO DE APLICACIONES DISTRIBUIDAS UTILIZANDO PATRONES DE DISEÑO MODELO/VISTA

Más detalles

a) Cita y comenta brevemente los grados de acoplamiento. Clasifícalos y ordénalos en orden creciente al nivel de acoplamiento asociado.

a) Cita y comenta brevemente los grados de acoplamiento. Clasifícalos y ordénalos en orden creciente al nivel de acoplamiento asociado. Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE II: CONCEPTOS TEÓRICOS Y PRÁCTICOS DNI Apellidos y nombre 1. Responde a las siguientes cuestiones (2 puntos): a) Cita y comenta brevemente

Más detalles

1. Definición. Open Source. Escalable. Alto desempeño. Arquitectura Modular. Producto de licencia de código abierto sin coste adicional.

1. Definición. Open Source. Escalable. Alto desempeño. Arquitectura Modular. Producto de licencia de código abierto sin coste adicional. 1. Definición JBoss es un proyecto de código abierto, con el que se consigue un servidor de aplicaciones basado en J2EE, e implementado al 100% en Java. Por lo tanto al estar basado en Java, JBoss puede

Más detalles

Enterprise JavaBeans

Enterprise JavaBeans Enterprise Java Beans y JBoss Enterprise JavaBeans Es una de las API que forman parte del estándar de construcción de aplicaciones empresariales J2EE (ahora JEE 5.0) de Oracle Corporation (inicialmente

Más detalles

GUÍA TÉCNICA. Desarrollo de Sistemas de Información la plataforma Business Intellingence Pentaho

GUÍA TÉCNICA. Desarrollo de Sistemas de Información la plataforma Business Intellingence Pentaho Desarrollo de Sistemas de Información la plataforma Business Intellingence Página 1 de 11 Control de versiones Ver. Fecha Descripción Autores 1 04/07/14 Versión inicial SDP Página 2 de 11 Índice del Documento

Más detalles

Diseño orientado a los objetos

Diseño orientado a los objetos Diseño orientado a los objetos El Diseño Orientado a los Objetos (DOO) crea una representación del problema del mundo real y la hace corresponder con el ámbito de la solución, que es el software. A diferencia

Más detalles

Modelos de los sistemas distribuidos. Jorge Iván Meza Martínez [email protected]

Modelos de los sistemas distribuidos. Jorge Iván Meza Martínez jimezam@gmail.com Modelos de los sistemas distribuidos Jorge Iván Meza Martínez [email protected] Especialización en Gestión de Redes de Datos Universidad Nacional de Colombia Sede Manizales 1/36 Contenidos Modelo arquitectónico

Más detalles

Introducción a los Servicios Web. Ing. José Luis Bugarin ILUMINATIC SAC [email protected]

Introducción a los Servicios Web. Ing. José Luis Bugarin ILUMINATIC SAC jbugarin@consultorjava.com Introducción a los Servicios Web Ing. José Luis Bugarin ILUMINATIC SAC [email protected] Servicios Web y Soa En un contexto SOA y los servicios web son una oportunidad de negocios en la actualidad.

Más detalles

Service Oriented Architecture: Con Biztalk?

Service Oriented Architecture: Con Biztalk? Service Oriented Architecture: Con Biztalk? Pablo Abbate Servicios Profesionales Danysoft SOA supone una nueva forma de pensar acerca de la arquitectura IT para las empresas. De hecho, es una asociación

Más detalles

Capítulo III. Análisis y diseño.

Capítulo III. Análisis y diseño. Capítulo III. Análisis y diseño. 3.1 Análisis. El análisis es el intermediario entre los requisitos del sistema y el diseño, esta sección definiremos el análisis con una serie de modelos técnicos del sistema,

Más detalles

Plataforma de expediente Electrónico @DOC

Plataforma de expediente Electrónico @DOC MINISTERIO DE LA PRESIDENCIA SUBSECRETARÍA SUBDIRECCIÓN GENERAL DE TECNOLOGÍAS Y SERVICIOS DE LA INFORMACIÓN Plataforma de expediente Electrónico @DOC Arquitectura de Sistemas Control de versiones Versión

Más detalles

Tema 1. Arquitectura Cliente/Servidor

Tema 1. Arquitectura Cliente/Servidor Tema 1. Arquitectura Cliente/Servidor SCS Sistemas Cliente/Servidor 4 o informática http://ccia.ei.uvigo.es/docencia/scs 27 de septiembre de 2009 FJRP, FMBR [sistemas cliente-servidor] CCIA 1.1 Sistemas

Más detalles

GUÍA TÉCNICA. Desarrollo de Proyectos en Plataforma Liferay en el Gobierno de Extremadura

GUÍA TÉCNICA. Desarrollo de Proyectos en Plataforma Liferay en el Gobierno de Extremadura Desarrollo de Proyectos en en el Gobierno de Extremadura Página 1 de 10 Control de versiones Núm Fecha Descripción Autores 1.0 01/09/2012 Estandar para el desarrollo de portales con el gestor de contenidos

Más detalles

Práctica 1: Instalación de un servidor de aplicaciones web y diseño de la vista de una aplicación

Práctica 1: Instalación de un servidor de aplicaciones web y diseño de la vista de una aplicación Práctica 1: Instalación de un servidor de aplicaciones web y diseño de la vista de una aplicación Sistemas de Información Grado de Informática Dpto. de Informática e Ingeniería de Sistemas, Universidad

Más detalles

Ingeniería de Software con UML Unified Modeling Language Lenguaje Unificado de Modelado

Ingeniería de Software con UML Unified Modeling Language Lenguaje Unificado de Modelado Ingeniería de Software con UML Unified Modeling Language Lenguaje Unificado de Modelado 1. Introducción Unified Modeling Languaje Fuente: Booch- Jacobson-Rumbauch y diversos sitios Internet, entre otros:

Más detalles

1 Índice... 1. 2 Introducción... 2. 2.1 Propósito... 2. 2.2 Alcance... 2. 3 Modelo Arquitectónico Inicial... 3

1 Índice... 1. 2 Introducción... 2. 2.1 Propósito... 2. 2.2 Alcance... 2. 3 Modelo Arquitectónico Inicial... 3 1 Índice 1 Índice... 1 2 Introducción... 2 2.1 Propósito... 2 2.2 Alcance... 2 3 Modelo Arquitectónico Inicial... 3 3.1 Diagrama de alto nivel de la arquitectura... 3 3.2 Vista de Casos de Uso... 5 3.2.1

Más detalles

Ingeniería de Software en SOA

Ingeniería de Software en SOA Ingeniería de Software en SOA ECSDI LSI-FIB-UPC cbea Curso 2014/2015 ECSDI (LSI-FIB-UPC cbea) Ingeniería de Software en SOA Curso 2014/2015 1 / 51 Índice 1 Directrices para la IS en SOA 2 Modelo de referencia

Más detalles

OpenProdoc. ECM Open Source

OpenProdoc. ECM Open Source OpenProdoc ECM Open Source Índice Visión General Arquitectura Funciones Seguridad Administración Requerimientos Evolución Visión General OpenProdoc es un gestor documental de código abierto. Cuenta con

Más detalles

INF 473 Desarrollo de Aplicaciones en

INF 473 Desarrollo de Aplicaciones en INF 473 Desarrollo de Aplicaciones en Java Unidad II El Lenguaje de Programación Java Prof. José Miguel Rubio [email protected] [email protected] PUCV Marzo 2008 1 Orígenes del Lenguaje Java 1991. James

Más detalles

Cómo puede ayudarle JBuilder en sus Desarrollos Java?

Cómo puede ayudarle JBuilder en sus Desarrollos Java? Artículos técnicos Grupo Danysoft: Cómo puede ayudarle JBuilder en sus Desarrollos Java? Oscar Cristóbal Ruiz Departamento Java Equipo Grupo Danysoft Enero 2003 - (902) 123146 www.danysoft.com Cómo puede

Más detalles

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

PORTAL DE INTEGRACIÓN DE BANCOS DE INFORMACIÓN DISPERSOS A TRAVÉS DE WEB SERVICES Autor: Ing. Walther Antonioli Ravetto PORTAL DE INTEGRACIÓN DE BANCOS DE INFORMACIÓN DISPERSOS A TRAVÉS DE WEB SERVICES Autor: Ing. Walther Antonioli Ravetto Introducción: Sobre casi cualquier tema del quehacer humano que se aborde, existen

Más detalles

Windows Server 2003. Windows Server 2003

Windows Server 2003. Windows Server 2003 Windows Server 2003 Windows Server 2003 Es un sistema operativo de la familia Windows de la marca Microsoft para servidores que salió al mercado en el año 2003. Está basada en tecnología NT y su versión

Más detalles

Descripción. Este Software cumple los siguientes hitos:

Descripción. Este Software cumple los siguientes hitos: WWWMONITORDBACOM Descripción Este Software cumple los siguientes hitos: a- Consola de Monitoreo b- Envío de Alertas (correo, SMS) c- Gestión de Eventos desatendidos (sea capaz ejecutar script de solución

Más detalles

Diplomado Java. Descripción. Objetivo. A quien está dirigido. Requisitos. Beneficios

Diplomado Java. Descripción. Objetivo. A quien está dirigido. Requisitos. Beneficios Diplomado Java Descripción El lenguaje de programación Java es uno de los más utilizados hoy en día. Su potencia, simplicidad, funcionalidad y capacidad hacen que este lenguaje sea una de las herramientas

Más detalles

CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR

CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR En este capítulo se describe el análisis y diseño de un sistema, denominado e-commerce Constructor, el cual cumple con los siguientes objetivos: Fungir

Más detalles

Arquitectura cliente/servidor

Arquitectura cliente/servidor Departamento de Lenguajes y Sistemas Informáticos Arquitectura cliente/servidor Programación en Internet Curso 2004-2005 Índice Introducción Tipos de servidores Ventajas Separación de funciones Modelos

Más detalles

Estilos de Arquitectura y. Patrones de Diseño Arquitectónico. Patrones de Arquitectura

Estilos de Arquitectura y. Patrones de Diseño Arquitectónico. Patrones de Arquitectura Estilos de Arquitectura y Patrones de Diseño Arquitectónico Gastón Mousqués - AR 1 Patrones de Arquitectura Gastón Mousqués - AR 2 Principales Categorías de Patrones (Software) Patrones de Análisis Expresan

Más detalles