Workflow, BPM y Java Resumen de la presentación de Tom Baeyens

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

Download "Workflow, BPM y Java Resumen de la presentación de Tom Baeyens"

Transcripción

1 Workflow, BPM y Java Resumen de la presentación de Tom Baeyens Workflow, BPM y Java Página 1 de 11

2 1. Introducción Tom Baeyens es el fundador y arquitecto del proyecto de JBoss jbpm, la máquina de workflow open source. En este documento se presentan los puntos más importantes considerados en la presentación de JBoss jbpm realizada por su fundador el 23 de junio de Qué es lo que le falta a Java? Luego de todo el problema para hacer que Java sea rápido, vamos a introducir estados de espera, esta es la principal dificultad que vamos a tratar. Lo que se quiere mostrar en la presentación es que no se necesita magia para realizar todo ese trabajo. Figura 1 Como puede verse en la figura 1, se tienen diferentes dominios, el dominio de workflow con sus requerimientos específicos, el dominio de BPM con sus requerimientos específicos, y finalmente los requerimientos de orquestación. Hay soluciones en cada dominio. Algo que se ha descubierto es que en muchos de estos dominios, no solo estos 3 porque en realidad hay mas, todas las soluciones son parecidas pero son muy diferentes, no tienen un modelo en común. Esto es lo que se presentará a continuación, el hecho de que se pudo encontrar un modelo en común que por un lado es bastante chico y simple de entender y por el otro lado puede ser extendido en cada uno de los dominios funcionales mencionados anteriormente. Workflow, BPM y Java Página 2 de 11

3 Figura 2 Se tiene un sistema A y un sistema B y se quiere suspender la ejecución del sistema A mientras espera por la ejecución de ciertas instrucciones de B. Hay que ver cuales son las limitaciones de Java para este tipo de tareas. Es posible hacerlo pero lleva mucho costo, esto muestra el problema que vamos a tratar. Una forma de resolver esto es la siguiente: sendmessagetosystemb(); Response response = waitforresponsefromb(): El problema es que esto no es persistente porque si el thread de Java esta esperando el waitforresponsefromb y se apaga el servidor, el problema es que se pierde el thread y no se sabe donde se está en el proceso. Por lo tanto, este código java no es posible utilizarlo porque no es persistente. La solución tradicional a este problema es separar el código en requests separados y guardar algún estado en la base de datos. Otra cosa importante es la representación gráfica porque podemos pensar en soluciones para persistir los threads, soluciones orientadas al área técnica, pero el problema es que no hay una representación grafica y esto es importante. Por lo tanto las principales limitaciones de Java son que no es persistente y que no es posible definir una representación grafica. Ahora vamos a hablar de la representación gráfica y de por que es importante. Entre los analistas del negocio y los técnicos desarrolladores debería haber un lenguaje en común con el que puedan comunicarse. Los analistas no están aptos para escribir software porque eso requiere saber muchos detalles técnicos. Estos dibujan una representación grafica de los procesos del negocio con los que están trabajando, pero estas imágenes contienen estados de espera y esta es una de las limitaciones de java por lo que es difícil transformar esos estados de espera en software. Lo que vamos a intentar hacer es crear una solución técnica a los estados de espera y esto creara un lenguaje en común entre los analistas del negocio y los técnicos desarrolladores. Workflow, BPM y Java Página 3 de 11

4 Los analistas no crean software, estos crean un modelo inicial de los requerimientos con su representación grafica, luego los desarrolladores agregan algunos detalles técnicos. Los analistas solo miran la vista proyectada lo que significa que solo miran la parte gráfica del proceso y no los detalles que se esconden detrás. 3. Enfoque tradicional Hoy en día el mercado de workflow y sistemas BPM está muy fragmentado y no se pueden encontrar sistemas con fundamentos en común por lo que es difícil mirarlos y compararlos. Todos estos sistemas de workflow y BPM definen un conjunto de construcciones de workflow, estos son todos los elementos que se pueden dibujar en la representación gráfica, hay un conjunto fijo de construcciones. Todas estas construcciones están hardcodeadas o fuertemente ligadas al comportamiento en tiempo de ejecución o a una implementación. Cuando se dibuja algo en la pantalla se especifica el comportamiento en tiempo de ejecución o implementación. El conjunto de construcciones para definir el workflow, tipos de nodos, etc. es lo que comúnmente se llama el lenguaje del proceso. La runtime engine esta completamente escondida en el enfoque tradicional, todos estos tipos de nodos son ejecutados en el ambiente de desarrollo y no se tiene acceso a ellos, están como escondidos bajo las cortinas de la runtime engine. Este enfoque tradicional también tiene problemas tradicionales. Los sistemas tienden a ser monolíticos por lo que hace difícil integrarlos con el software java. Otro problema es que el lenguaje de proceso nunca es lo suficientemente poderoso. Existe cierta investigación sobre soluciones y especificaciones todas basadas en un conjunto fijo de tipos de nodos y se muestra que el lenguaje de proceso de ninguna de estas propuestas es lo suficientemente poderoso para construir un modelo. Otro problema es que no hay libertad para modelar, en un sistema tradicional se dibuja en la pantalla e inmediatamente se conecta a una implementación. La idea de los analistas es dibujar los nodos vacíos y posponer los detalles técnicos de la implementación para después, esto en el enfoque tradicional no es posible y se transforma en programación visual. 4. Programación orientada a grafos. Se comienza el modelo definiendo un grafo dirigido compuesto por nodos y transiciones. Workflow, BPM y Java Página 4 de 11

5 Figura 3 Podemos modelar esto de la siguiente forma: Figura 4 El siguiente paso es definir un modelo de ejecución. Un token es una ruta de ejecución en un sistema en particular. Cuando se ejecuta codigo Java, un token corresponde a un thread pero la diferencia es que cuando un sistema A envía un mensaje a un sistema B y está esperando entonces el token sigue ahí, el token sigue representando esta ejecución porque desde el sistema B se espera un mensaje en la misma ejecución en la cual luego se quieren hacer mas cálculos. Un token es la base para un modelo de ejecución de un grafo. Figura 5 En la figura anterior se puede ver el grafo que especifica el proceso del negocio y se puede ver un árbol de tokens. Un token representa una parte de la ejecución, pero un proceso del negocio puede tener muchas partes de ejecución concurrentes y para modelar eso tenemos una relación padre-hijo entre los tokens. Tenemos un token principal creado al inicio de la ejecución y luego hay un fork por lo que tenemos dos tokens los cuales son hijos del token principal y pueden progresar independientemente. Estos tokens pueden ser representados al igual que antes en cualquier formato. Workflow, BPM y Java Página 5 de 11

6 A continuación se muestra la relación entre los tokens y la relación entre un token y un nodo del grafo. Figura 6 El siguiente paso definiendo el modelo de ejecución es definir las señales. Una señal es el disparador que reanuda el proceso de ejecución. El sistema A esta ejecutando codigo java, envía un mensaje al sistema B y el token va a apuntar a un nodo en el grafo el cual es un estado de espera y luego se necesita un mecanismo para reanudar la ejecución de este token, esto es la señal. Ahora vamos a ver de qué se trata todo esto de las señales y creación de una instancia de proceso, a continuación se pueden ver dos fragmentos de código: ProcessInstance pi = new ProcessInstance(pd); Token token = pi.getroottoken(); token.signal(); //put process instance and token //in the persistent store web app MDB //fetch the token from //the persistent store Token token =...; token.signal(); La primer parte podría estar dentro de una aplicación web y la otra dentro de un MDB (Message Driven Bean). En la primer parte, se crea una nueva instancia de proceso para determinada definición de proceso. Luego, se toma el token principal de la instancia de proceso y se le da una señal porque luego de creada la instancia de proceso el token raíz apunta al estado inicial del proceso. Esta señal va a hacer que el token que apunta al primer estado deje ese estado a través de una transición y el proceso se va a ejecutar hasta que entre en algún estado de espera. Entonces la ejecución del proceso está en algún estado apuntando a algún nodo del proceso grabado en Workflow, BPM y Java Página 6 de 11

7 persistencia. Luego MDB puede traer el token de la persistencia y reanudar la ejecución del mismo con la señal. El algoritmo de ejecución es básicamente una variante de la cadena de responsabilidades. Veamos que pasa internamente cuando un proceso se está ejecutando. Figura 7 Dada una instancia de proceso en un estado dado, hay un token apuntando a un nodo en el grafo. En ese momento, se puede enviar una señal al token y eso va a tener un efecto que va a hacer que se ejecute el método leave(token,transition) del nodo, donde el token se pasa a si mismo como parámetro y se ejecuta la operación take de la transición que también se pasa como parámetro. El método take de la transición se va a fijar en el nodo destino y va a ejecutar el método excecute de dicho nodo pasándole el mismo token como parámetro. Puede verse que el token es pasado desde un nodo hasta el otro nodo por medio de la transición. En el método excecute del nodo destino, dos cosas pueden pasar, primero que nada, cada nodo puede implementar un comportamiento especifico y esa es la primer responsabilidad que tiene el método excecute, denominada responsabilidad funcional. Además, el método excecute también es responsable de la propagación de la ejecución del proceso, esto significa que podría invocar un método leave para hacer una transición o podría no hacer nada en caso de que tenga que quedarse esperando. Otra opción sería crear nuevos tokens concurrentes y lanzarlos a través de transiciones diferentes. Para cada tipo de nodo se puede tener una subclase de la clase Nodo y se sobrecarga el método excecute para reflejar los diferentes comportamientos que pueden tener los nodos. Este algoritmo esta alineado con transacciones y sincronización. Por cada pedido que llega al servidor, se tiene una transacción y típicamente todos los cálculos que se hacen pertenecen a una transacción. En cualquier momento se puede agregar comunicación asíncrona, cuando esto se hace es más fácil combinar todo esto. Los analistas del negocio dibujan el grafo y los técnicos desarrolladores pueden agregar detalles técnicos como ser transacciones y sincronización o comportamiento. Workflow, BPM y Java Página 7 de 11

8 Una característica importante es que no hay reinvención, esto significa que pueden hacerse subclases de Nodo e implementar el método excecute. En el código dentro de un Nodo se puede utilizar cualquier API de Java, por ejemplo JMS para comunicación asíncrona. Tenemos que ser capaces de definir más detalles técnicos y esto se hace agregando acciones. Antes de definir lo que son las acciones es necesario definir que son los eventos. Los eventos también se pueden especificar en el grafo, por ejemplo, tomar una transición, entrar a un nodo, dejar un nodo. Figura 8 Los eventos se consideran instantáneos, son disparados y eso es todo, se ejecutan, sin espera. Algo importante sobre las acciones es que están escondidas de la representación visual del proceso y esto es bueno para que los desarrolladores puedan agregar detalles técnicos sin tener que modificar el grafo dibujado por los analistas. Cualquier cosa se puede modelar como un nodo si es interesante para los analistas, pero si no lo es se puede modelar luego como una acción. En la figura 8 pueden verse los eventos como cuadrados y las acciones como rectángulos rojos incluidos en estos. En cada evento se tienen una lista de acciones. Al inicio se tiene un token el cual apunta al primer nodo del grafo, luego se envía una señal y el token comienza a viajar por la transición hacia el siguiente nodo y cuando esto pasa las acciones que se encuentran en el evento de la transición son ejecutadas una por una, luego el token se mueve hacia el evento de entrada al siguiente nodo y se ejecutan las acciones del evento y luego el token se posiciona en el nodo. Ahora vamos a ver la programación orientada a grafos desde otra perspectiva. La programación orientada a grafos provee razones para estructurar el software mediante un grafo. Esto es importante porque existen muchas técnicas para desarrollar software que son solo técnicas para estructurar. La primer técnica creada hace mucho tiempo atrás fue la de programación abstracta la cual permite crear mucha abstracción en el código separando los métodos de las definiciones de Workflow, BPM y Java Página 8 de 11

9 operaciones, esto en realidad es una forma de estructurar para hacer que el código sea mas mantenible y más fácil de desarrollar. Lo mismo con la programación orientada a objetos la cual fue el siguiente paso, y lo mismo con programación orientada a aspectos la cual fue el siguiente paso y también es una forma de estructurar el software. Volviendo ahora al algoritmo de ejecución visto antes, básicamente esto también es una forma de estructurar el software y en este caso es estructurarlo alrededor de un grafo. Sabemos que el costo de realizar un proyecto de software está exponencialmente relacionado al tamaño del proyecto por lo que si podemos bajar la complejidad va a haber un impacto en el costo. 5. Conclusiones Una simple API y la cadena de responsabilidades reemplazan los sistemas monolíticos. No se necesita más un sistema monolítico, es mucho más fácil integrar esto con código Java existente. Herencia de Nodo. Podemos crear nuevos tipos de nodos creando subclases de la clase Nodo y sobrecargando el método excecute. Agregado de acciones invisibles. Le da libertad al modelado, los analistas pueden modelar lo que quieren y no es necesario que modifiquen el grafo para agregar alguna cuestión técnica que no les preocupa. Los analistas pueden concentrarse en las cosas que son importantes para ellos sabiendo que los técnicos son los que van a hacer que sea ejecutable agregando detalles técnicos. Ciclo del proceso de desarrollo, o proceso de desarrollo iterativo donde los analistas del negocio crean un modelo inicial, los técnicos refinan el modelo, éste vuelve a los analistas y se crea un círculo. Reemplaza la programación visual la cual existe en las soluciones tradicionales. A continuación se muestra una estructura de bloques donde puede verse cual es la posición de la programación orientada a grafos relacionada a Java y el área funcional. Workflow, BPM y Java Página 9 de 11

10 Figura 9 Esto esta relacionado a la figura 1 donde pueden verse los 3 dominios. Posicionamos la programación orientada a grafos inmediatamente arriba de Java. En este modelo se pueden agregar características para el manejo de tareas (task management features) directamente relacionadas al workflow y agregar una interfaz de usuario arriba de las tareas de manejo mencionadas. En otro dominio funcional se pueden agregar características para la invocación asíncrona, se pueden agregan diferentes mecanismo de transporte como los web services. Lo que se hace es extender la programación orientada a grafos para agregar características de orquestación. Lo mismo para BPM, también se puede extender la programación orientada a grafos construyendo bloques arriba de ella. jbpm está construido utilizando este paradigma por lo que si se lo quiere extender utilizando algún área funcional esto se puede hacer construyendo bloques arriba como se mencionó anteriormente. 6. Resumen Java tiene un soporte limitado para estados de espera. La programación orientada a grafos extiende Java con la habilidad de suspender y reanudar ejecuciones. La programación orientada a grafos sigue el paradigma de bloques. Se pueden agregar más componentes funcionales arriba de la programación orientada a grafos en cualquier dirección, en el dominio de workflow, BPM u orquestación. JBoss jbpm es un proyecto que implementa esta tecnología, puede ser utilizado en cualquier ambiente Java ya que proporciona un API. Workflow, BPM y Java Página 10 de 11

11 Se puede comenzar muy simple agregando esta librería Java al classpath, escribiendo una simple aplicación web pero es importante saber que si se necesita después se puede escalar a un nivel empresarial. La idea de la programación orientada a grafos es brindar la comodidad de que un grupo de analistas estudien un problema y busquen la solución mediante la generación de un grafo que modele el proceso de la realidad planteada, y a partir de este grafo los programadores implementen las acciones a realizar en cada nodo del grafo, así como también en las transiciones y en las distintas acciones que pueden ocurrir. Esto implica que la definición del grafo generado por los analistas es estática, pero permite que si en un momento dado el problema cambia, los analistas modifican el grafo para representar estos cambios y a su vez los programadores tienen que modificar la implementación necesaria para que los cambios en el grafo tengan efecto. 7. Referencias - integration Pagina de cursos on-line donde se encuentra la presentación de Tom Baeyens. Pagina principal de jbpm. Pagina principal de Jboss. Foros de jbpm. Workflow, BPM y Java Página 11 de 11

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

UNIVERSIDAD CATOLICA DE COLOMBIA FACULTAD DE INGENIERIA DE SISTEMAS

UNIVERSIDAD CATOLICA DE COLOMBIA FACULTAD DE INGENIERIA DE SISTEMAS UNIVERSIDAD CATOLICA DE COLOMBIA FACULTAD DE INGENIERIA DE SISTEMAS CURSO: JAVA BASICO PROFESOR: EMERSON CASTAÑEDA SANABRIA TEMA: Programación Orientada a Objetos OBJETIVOS: Familiarizarse con la Programación

Más detalles

WebRatio. Otro camino para el BPM. Web Models s.r.l. www.webratio.com contact@webratio.com 1 / 8

WebRatio. Otro camino para el BPM. Web Models s.r.l. www.webratio.com contact@webratio.com 1 / 8 WebRatio Otro camino para el BPM Web Models s.r.l. www.webratio.com contact@webratio.com 1 / 8 El BPM El BPM (Business Process Management) no es solo una tecnología, además a grandes rasgos es una disciplina

Más detalles

Herramientas de Software que posibilitan el BPM

Herramientas de Software que posibilitan el BPM Qué es BPM? BPM (Business Process Management) no es solamente una tecnología, sino en términos generales, una disciplina gerencial que trata a los procesos como bienes tangibles que contribuyen al desempeño

Más detalles

Programación orientada a

Programación orientada a Programación orientada a objetos con Java Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es Objetivos Presentar los conceptos de la programación

Más detalles

Inicio de MO Inicio de MD Inicio de MF. Documento de Análisis. Base de datos de las especificaciones OMT. MO, MD, MF Detallados. Librería de Clases

Inicio de MO Inicio de MD Inicio de MF. Documento de Análisis. Base de datos de las especificaciones OMT. MO, MD, MF Detallados. Librería de Clases 3.2 TÉCNICA DE MODELADO DE OBJETOS (OMT) (JAMES RUMBAUGH). 3.2.1 Introducción. En este documento se trata tanto el OMT-1 como el OMT-2, el primero contenido en el Libro Modelado y Diseño Orientado (Metodología

Más detalles

Tema 4: Diseño de flujos interaplicación

Tema 4: Diseño de flujos interaplicación Tema 4: Diseño de flujos interaplicación 4.1 Introducción a los Sistemas EAI Modelo de referencia (1) INTEGRACIÓN B2B INTEGRACIÓN DE APLICACIONES Y PROCESOS INTEGRACIÓN DE DATOS INTEGRACIÓN DE PLATAFORMA

Más detalles

5. MODELOS DE CLIENTE Y SERVIDOR ORIENTADOS A AGENTES MÓVILES

5. MODELOS DE CLIENTE Y SERVIDOR ORIENTADOS A AGENTES MÓVILES SISTEMAS DISTRIBUIDOS DE REDES 5. MODELOS DE CLIENTE Y SERVIDOR ORIENTADOS A AGENTES MÓVILES Programación remota: Introducción y generalidades INTRODUCCIÓN Debido a la dificultad de la arquitectura actual

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

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

2.1 Ingeniería de Software

2.1 Ingeniería de Software Capítulo 2 Marco Teórico Se pretende desarrollar un software que pueda ser aplicado como una herramienta útil para la administración de una empresa. Es necesario tener en cuenta que, en todo desarrollo

Más detalles

MICQ. Trabajo Práctico Final Seminario de Ingeniería en Informática I 75.35. Facultad de Ingeniería, UBA. Junio 2002. Cátedra: Pablo Cosso

MICQ. Trabajo Práctico Final Seminario de Ingeniería en Informática I 75.35. Facultad de Ingeniería, UBA. Junio 2002. Cátedra: Pablo Cosso MICQ Facultad de Ingeniería, UBA. Junio 2002 Trabajo Práctico Final Seminario de Ingeniería en Informática I 75.35 Cátedra: Pablo Cosso Alumno: Diego Fernando Montaldo 75.300 1 de 1 Introducción Este documento

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

PROGRAMACION ORIENTADA A OBJETOS CON PHP

PROGRAMACION ORIENTADA A OBJETOS CON PHP PROGRAMACION ORIENTADA A OBJETOS CON PHP COMO SE DEFINE EN PHP La programación orientada a objetos es una metodología de programación avanzada y bastante extendida, en la que los sistemas se modelan creando

Más detalles

Diseñador Gráfico de Proceso JBoss jbpm

Diseñador Gráfico de Proceso JBoss jbpm Diseñador Gráfico de Proceso JBoss jbpm Cómo Empezar: Cómo crear su primera definición de proceso 3.0 alpha2 Tabla de Contenidos Público Objetivo Prólogo 1. Instalacion de Diseñador Gráfico de Proceso

Más detalles

CICLO SUPERIOR DESARROLLO DE APLICACIONES MULTIPLATAFORMA

CICLO SUPERIOR DESARROLLO DE APLICACIONES MULTIPLATAFORMA CICLO SUPERIOR DESARROLLO DE APLICACIONES MULTIPLATAFORMA PROGRAMACIÓN DIDACTICA ANUAL Parte específica del módulo: 0485. Programación Departamento de Familia Profesional de Informática Curso: 2014-15

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

CURSOS DE VERANO 2014

CURSOS DE VERANO 2014 CURSOS DE VERANO 2014 CLOUD COMPUTING: LA INFORMÁTICA COMO SERVICIO EN INTERNET LA PLATAFORMA GOOGLE CLOUD PLATFORM. GOOGLE APP ENGINE Pedro A. Castillo Valdivieso Universidad de Granada http://bit.ly/unia2014

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

Sistema de Control de Acceso Distribuido

Sistema de Control de Acceso Distribuido Sistema de Control de Acceso Distribuido Ing: Javier Jorge Lic. Eduardo Sanchez Febrero, 2010 Página 1 de 12 Alcance o dimensiones del problema Debido a que el control de acceso presenta grandes dimensiones

Más detalles

Bienvenidos a la presentación: Introducción a conceptos básicos de programación.

Bienvenidos a la presentación: Introducción a conceptos básicos de programación. Bienvenidos a la presentación: Introducción a conceptos básicos de programación. 1 Los programas de computadora son una serie de instrucciones que le dicen a una computadora qué hacer exactamente. Los

Más detalles

CURSOS DE VERANO 2014

CURSOS DE VERANO 2014 CURSOS DE VERANO 2014 CLOUD COMPUTING: LA INFORMÁTICA COMO SERVICIO EN INTERNET La plataforma Google Cloud Platform. Google App Engine Pedro A. Castillo Valdivieso Universidad de Granada La plataforma

Más detalles

Procesos. Bibliografía. Threads y procesos. Definiciones

Procesos. Bibliografía. Threads y procesos. Definiciones Procesos Prof. Mariela Curiel Bibliografía A. Tanembaum & M. Van Steen. Sistemas Distribuidos. Principios y Paradigmas. 2da. Edición. Smith & Nair. The Architecture of Virtual Machines. IEEE Computer.

Más detalles

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

Gerencia de Procesos de Negocio (Business Process Management, BPM). Lic. Patricia Palacios Zuleta Gerencia de Procesos de Negocio (Business Process Management, BPM). Lic. Patricia Palacios Zuleta (Business Process Management, BPM). La Gerencia de los Procesos del Negocio: Se define como: "integración

Más detalles

IV. Implantación del sistema.

IV. Implantación del sistema. IV. Implantación del sistema. Para hablar sobre el proceso de desarrollo del sistema de Recuperación de Información Visual propuesto, empezaremos hablando del hardware utilizado, las herramientas de software

Más detalles

Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa.

Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa. BASES DE DATOS Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa. La creación de una base de datos debe ser realizada cuidadosamente procurando

Más detalles

Planos de ejecución en Velneo V7

Planos de ejecución en Velneo V7 Planos de ejecución en Velneo V7 Por Jesús Arboleya Introducción 3 Arquitectura Cliente/Servidor 4 1. Objetos que siempre se ejecutan en el servidor 5 2. Objetos que siempre se ejecutan en el cliente 6

Más detalles

Curso de Android con Java

Curso de Android con Java Todos los Derechos Reservados Global Mentoring Experiencia y Conocimiento para tu Vida 1 Este es un tiempo único para el mundo de los celulares, en particular de los Smartphones. Este tipo de dispositivos

Más detalles

1 HILOS (THREADS) EN JAVA

1 HILOS (THREADS) EN JAVA 1 HILOS (THREADS) EN JAVA 1.1QUÉ ES UN THREAD La Máquina Virtual Java (JVM) es un sistema multihilo. Es decir, es capaz de ejecutar varios hilos de ejecución simultáneamente. La JVM gestiona todos los

Más detalles

BASE DE DATOS: ENFOQUE ORIENTADO A OBJETOS. Dámaso López Aragón

BASE DE DATOS: ENFOQUE ORIENTADO A OBJETOS. Dámaso López Aragón BASE DE DATOS: ENFOQUE ORIENTADO A OBJETOS Dámaso López Aragón Introducción En la actualidad, la orientación a objetos es una nueva forma de comprender los problemas y modelar el negocio de una empresa,

Más detalles

Unidad 1: Conceptos generales de Sistemas Operativos.

Unidad 1: Conceptos generales de Sistemas Operativos. Unidad 1: Conceptos generales de Sistemas Operativos. Tema 3: Estructura del sistema operativo. 3.1 Componentes del sistema. 3.2 Servicios del sistema operativo. 3.3 Llamadas al sistema. 3.4 Programas

Más detalles

A continuación resolveremos parte de estas dudas, las no resueltas las trataremos adelante

A continuación resolveremos parte de estas dudas, las no resueltas las trataremos adelante Modulo 2. Inicio con Java Muchas veces encontramos en nuestro entorno referencias sobre Java, bien sea como lenguaje de programación o como plataforma, pero, que es en realidad Java?, cual es su historia?,

Más detalles

Federico Peinado www.federicopeinado.es

Federico Peinado www.federicopeinado.es Federico Peinado www.federicopeinado.es Depto. de Ingeniería del Software e Inteligencia Artificial disia.fdi.ucm.es Facultad de Informática www.fdi.ucm.es Universidad Complutense de Madrid www.ucm.es

Más detalles

CURSO DE PROGRAMACIÓN EN JAVA J2EE 7 ÍNDICE

CURSO DE PROGRAMACIÓN EN JAVA J2EE 7 ÍNDICE CURSO DE PROGRAMACIÓN EN JAVA J2EE 7 ÍNDICE PRÓLOGO... 13 APECTOS BÁSICOS DE JAVA... 15 1.1. LA MÁQUINA VIRTUAL JAVA... 15 1.2. EDICIONES JAVA... 16 1.3. ESTRUCTURA DE UN PROGRAMA JAVA... 16 1.4. EL MÉTODO

Más detalles

UNIVERSIDAD OBERTA DE CATALUNYA. Herramienta Visual para Diseñar formularios Web WformDesigner

UNIVERSIDAD OBERTA DE CATALUNYA. Herramienta Visual para Diseñar formularios Web WformDesigner UNIVERSIDAD OBERTA DE CATALUNYA Herramienta Visual para Diseñar formularios Web WformDesigner Especialidad: Administración Web y comercio electrónico en entornos de software libre Autor: Wilman Chamba

Más detalles

FORMACIÓN Principios de la programación orientada a objetos

FORMACIÓN Principios de la programación orientada a objetos FORMACIÓN Principios de la programación orientada a objetos En un mercado laboral en constante evolución, la formación continua de los profesionales debe ser una de sus prioridades. En Galejobs somos conscientes

Más detalles

Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática

Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática Tema 1 Introducción. Arquitectura básica y Sistemas Operativos Fundamentos de Informática Índice Descripción de un ordenador Concepto básico de Sistema Operativo Codificación de la información 2 1 Descripción

Más detalles

BANCO DE PREGUNTAS PARA EVALUACIÓN DE CONOCIMIENTOS DEL CONCURSO DE MÉRITOS Y OPOSICIÓN EXPERTO EN DESARROLLO DE SISTEMAS 1

BANCO DE PREGUNTAS PARA EVALUACIÓN DE CONOCIMIENTOS DEL CONCURSO DE MÉRITOS Y OPOSICIÓN EXPERTO EN DESARROLLO DE SISTEMAS 1 BANCO DE PREGUNTAS PARA EVALUACIÓN DE CONOCIMIENTOS DEL CONCURSO DE MÉRITOS Y OPOSICIÓN EXPERTO EN DESARROLLO DE SISTEMAS 1 1. Cuáles de los siguientes enunciados son declaraciones válidas? 2. Cuál de

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

INDICE Parte I. Conceptos 1. El estudio de los lenguajes de programación 2. Cuestiones de diseño de lenguajes

INDICE Parte I. Conceptos 1. El estudio de los lenguajes de programación 2. Cuestiones de diseño de lenguajes INDICE Parte I. Conceptos 1 1. El estudio de los lenguajes de programación 1.1. Por qué estudiar lenguajes de programación? 2 1.2. Breve historia de los lenguajes de programación 1.2.1. Desarrollo de los

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

6.1 Introducción a los sistemas EAI

6.1 Introducción a los sistemas EAI 6.1 Introducción a los sistemas EAI Integración de Aplicaciones (1) El problema de la integración de aplicaciones consiste en hacer colaborar entre sí a aplicaciones distribuidas, heterogéneas y posiblemente

Más detalles

Uso de excepciones en Java

Uso de excepciones en Java Uso de excepciones en Java En Java, cuando se produce un error en un método, se lanza un objeto Throwable. Cualquier método que haya llamado al método puede capturar la excepción y tomar las medidas que

Más detalles

Compiladores y Lenguajes de Programación. Maria de Guadalupe Cota Ortiz

Compiladores y Lenguajes de Programación. Maria de Guadalupe Cota Ortiz Compiladores y Lenguajes de Programación Maria de Guadalupe Cota Ortiz Organizaciones que rigen las normas para estandarización de Lenguajes de Programación IEEE (Instituto de Ingenieros Eléctricos y Electrónicos)

Más detalles

Índice. http://www.dicampus.es

Índice. http://www.dicampus.es Módulo 2 UML Índice Introducción a UML Lenguaje Unificado de Modelado (UML) Diagramas UML Diagramas de casos de uso Diagramas estructurales: Clases Diagramas estructurales: Objetos Diagramas de interacción:

Más detalles

Conceptos de Orquestador O2 EMPRESAS TUXPAN www.tuxpan.com

Conceptos de Orquestador O2 EMPRESAS TUXPAN www.tuxpan.com EMPRESAS TUXPAN www.tuxpan.com AÑO 2007 INDICE DE CONTENIDO 1 Software de Servicios y Orquestación de Procesos 2 1.1.1 Introducción 2 1.1.2 Software de Orquestación como Integrador 3 1.1.3 Automatización

Más detalles

Requisitos del Software Aplicativo Móvil SISTEMAS INTELIGENTES EN RED S.A.S.

Requisitos del Software Aplicativo Móvil SISTEMAS INTELIGENTES EN RED S.A.S. Requisitos del Software Aplicativo Móvil SISTEMAS INTELIGENTES EN RED S.A.S. Desarrollo de Aplicativo Móvil 2 Índice 1. INTRODUCCIÓN... 3 2. OBJETIVO... 3 3. MÓDULO MENSAJERÍA... 3 3.1. Actores... 3 3.2.

Más detalles

Capítulo 2. Marco Teórico

Capítulo 2. Marco Teórico Capítulo 2. Marco Teórico 2.1. Frameworks para Aplicaciones Web en Java Con el crecimiento exponencial de Internet en los últimos años, las aplicaciones Web se han convertido en una parte básica y común

Más detalles

3. DIAGRAMAS DE CLASES...19 3.1. INTRODUCCIÓN... 19 3.2. DIAGRAMAS DE CLASES... 19 3.2.1. Perspectivas...20 3.2.2. Clases...20 3.2.2.1.

3. DIAGRAMAS DE CLASES...19 3.1. INTRODUCCIÓN... 19 3.2. DIAGRAMAS DE CLASES... 19 3.2.1. Perspectivas...20 3.2.2. Clases...20 3.2.2.1. 3. DIAGRAMAS DE CLASES...19 3.1. INTRODUCCIÓN... 19 3.2. DIAGRAMAS DE CLASES... 19 3.2.1. Perspectivas...20 3.2.2. Clases...20 3.2.2.1. Compartimento del nombre...21 3.2.2.2. Compartimento de la lista

Más detalles

Fundamentos de Sistemas Operativos

Fundamentos de Sistemas Operativos Fundamentos de Sistemas Operativos Sistemas Informáticos Fede Pérez Índice TEMA Fundamentos de Sistemas Operativos 1. - Introducción 2. - El Sistema Operativo como parte de un Sistema de Computación 2.1

Más detalles

Sistema de gestión de procesos institucionales y documental.

Sistema de gestión de procesos institucionales y documental. [Documento versión 1.7 del 10/10/2015] Sistema de gestión de procesos institucionales y documental. El sistema de gestión de procesos institucionales y documental, es una solución diseñada para mejorar

Más detalles

JBoss jbpm 3.1. Guía Práctica de Workflow y BPM

JBoss jbpm 3.1. Guía Práctica de Workflow y BPM JBoss jbpm 3.1 Guía Práctica de Workflow y BPM Tabla de Contenidos 1. Introducción 1.1. Descripción General 1.2. Kit de inicio de JBoss jbpm 1.3. Diseñador gráfico de proceso JBoss jbpm 1.4. Componente

Más detalles

CURSO DE ADO EXPRESS/DATASNAP

CURSO DE ADO EXPRESS/DATASNAP CURSO DE ADO EXPRESS/DATASNAP EN DELPHI 7 RESUMEN DE EJERCICIOS Serie A 0 Creación de la base de datos 1 El API de ADO 2 Cadenas de conexión y propiedades 3 Tipos de cursores 4 Recuperación asíncrona 5

Más detalles

Analista Programador Java: Business Apps Expert

Analista Programador Java: Business Apps Expert Analista Programador Java: Business Apps Expert TITULACIÓN DE FORMACIÓN CONTINUA BONIFICADA EXPEDIDA POR EL INSTITUTO EUROPEO DE ESTUDIOS EMPRESARIALES Analista Programador Java: Business Apps Expert Duración:

Más detalles

http://www.statum.biz http://www.statum.info http://www.statum.org

http://www.statum.biz http://www.statum.info http://www.statum.org ApiaMonitor Monitor de Infraestructura BPMS Por: Ing. Manuel Cabanelas Product Manager de Apia Manuel.Cabanelas@statum.biz http://www.statum.biz http://www.statum.info http://www.statum.org Abstract A

Más detalles

Unidad 2: El sistema operativo. Trabajo sin conexión.

Unidad 2: El sistema operativo. Trabajo sin conexión. Unidad 2: El sistema operativo. Trabajo sin conexión. Un sistema operativo es un conjunto de programas de control que actúa como intermediario entre el usuario y el hardware de un sistema informático,

Más detalles

Estructura de Bases de datos. Leonardo Víquez Acuña

Estructura de Bases de datos. Leonardo Víquez Acuña Estructura de Bases de datos Leonardo Víquez Acuña Lenguajes de Bases de Datos Un sistema de bases de datos proporciona Un lenguaje de definición de datos para especificar el esquema de la base de datos

Más detalles

Unidad 2: Gestión de Procesos

Unidad 2: Gestión de Procesos Unidad 2: Gestión de Procesos Tema 4, Procesos: 4.1 El concepto de proceso. 4.2 Planificación de procesos. 4.3 Procesos cooperativos. 4.4 Hilos (threads). Informática (Segovia) 1 4.1 El concepto de proceso.

Más detalles

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

SISTEMAS DISTRIBUIDOS DE REDES 3.- ESTANDAR CORBA. 3.1. Características SISTEMAS DISTRIBUIDOS DE REDES 3.- ESTANDAR CORBA 3.1. Características La tendencia hacia el futuro es el de lograr la integración total de componentes realizados por terceras partes, para lo cual es necesario

Más detalles

PROCESOS SOFTWARE. Según esta estrategia, todo proceso debe planificarse, implantarse y evaluarse, para luego actuar sobre él.

PROCESOS SOFTWARE. Según esta estrategia, todo proceso debe planificarse, implantarse y evaluarse, para luego actuar sobre él. PROCESOS SOFTWARE MOTIVACIÓN? Con independencia de la metodología o modelo implementado, es común la estrategia para la mejora continua de la calidad, basada en el Círculo de Deming o Plan, Do, Check,

Más detalles

OpenSource BPMS. José Nelson Pérez Castillo Universidad Distrital Francisco José de Caldas, Bogotá, Colombia, nelsonp@udistrital.edu.

OpenSource BPMS. José Nelson Pérez Castillo Universidad Distrital Francisco José de Caldas, Bogotá, Colombia, nelsonp@udistrital.edu. Seventh LACCEI Latin American and Caribbean Conference for Engineering and Technology (LACCEI 2009) Energy and Technology for the Americas: Education, Innovation, Technology and Practice June 2-5, 2009,

Más detalles

GeneXus BPM Suite X. Última actualización: 01 de Setiembre de 2008

GeneXus BPM Suite X. Última actualización: 01 de Setiembre de 2008 Última actualización: 01 de Setiembre de 2008 Copyright Artech Consultores S. R. L. 1988-2008. Todos los derechos reservados. Este documento no puede ser reproducido en cualquier medio sin el consentimiento

Más detalles

Patrones para persistencia (I) Ingeniería del Software II

Patrones para persistencia (I) Ingeniería del Software II Patrones para persistencia (I) Ingeniería del Software II 1 Patrones para la construcción del esquema relacional En todos los ejemplos realizaremos transformaciones del siguiente diagrama de clases: Figura

Más detalles

Microsoft Visual Basic.NET

Microsoft Visual Basic.NET Microsoft Visual Basic.NET Curso de desarrollo de aplicaciones utilizando la tecnología de programación Microsoft.NET. El lenguaje utilizado es Visual Basic.NET, cuyas particularidades se estudian en la

Más detalles

Historia de revisiones

Historia de revisiones Binary Rain Glosario Versión 1.1 Historia de revisiones Fecha Versión Descripción Autor 17/08/2012 1.0 Creación del documento Carolina Trias 18/08/2012 1.1 Revisado y corregido por SQA Mercedes Marzoa

Más detalles

Programación para sistemas en red IV. Conceptos básicos II

Programación para sistemas en red IV. Conceptos básicos II Conceptos básicos II Maquina virtual de java (JVM): Una Máquina virtual Java (en inglés Java Virtual Machine, JVM) es un programa nativo, es decir, ejecutable en una plataforma específica, capaz de interpretar

Más detalles

Informe de avance Implementación herramientas de back-end (3-III).

Informe de avance Implementación herramientas de back-end (3-III). Proyecto RG-T1684 Desarrollo e implementación de las soluciones Prueba piloto del Componente III Informe Número 1. Informe de avance Implementación herramientas de back-end (3-III). Lautaro Matas 11/04/2013

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

JAVA SE STANDARD EDITION

JAVA SE STANDARD EDITION JAVA SE STANDARD EDITION PRESENTACIÓN Introduce la tecnología Java describiendo cuáles son sus características fundamentales. Seguidamente se proporciona una visión bastante completa del lenguaje Java,

Más detalles

Locker Room: Una Herramienta Para El Aprendizaje de Punteros Basada en La Metáfora de Las Taquillas

Locker Room: Una Herramienta Para El Aprendizaje de Punteros Basada en La Metáfora de Las Taquillas Locker Room: Una Herramienta Para El Aprendizaje de Punteros Basada en La Metáfora de Las Taquillas Carlos Martín Villanova, Tonghong Li, Claudio Soriente, Ricardo Jiménez Peris and Marta Patiño Martínez

Más detalles

Comparación del entorno IBM Websphere BPM y sus equivalentes funcionales en código fuente abierto.

Comparación del entorno IBM Websphere BPM y sus equivalentes funcionales en código fuente abierto. Comparación del entorno IBM Websphere BPM y sus equivalentes funcionales en código fuente abierto. 2 José Martinez Garro 1 Patricia Bazán 2 Emilio Lorenzón 1 LINTI Facultad de Informática UNLP 2 Facultad

Más detalles

Muestra de solicitud para una propuesta de un conjunto de aplicaciones de Gestión de Procesos de Negocio KIT DE HERRAMIENTAS DEL COMPRADOR DE BPMS

Muestra de solicitud para una propuesta de un conjunto de aplicaciones de Gestión de Procesos de Negocio KIT DE HERRAMIENTAS DEL COMPRADOR DE BPMS KIT DE HERRAMIENTAS DEL COMPRADOR DE BPMS Muestra de solicitud para una propuesta de un conjunto de aplicaciones de Gestión de Procesos de Negocio Parte 1 del kit completo de herramientas del comprador

Más detalles

Aplicación Java para distribución de código en R

Aplicación Java para distribución de código en R rolgalan@gmail.com Huesca - 24 de noviembre de 2009 Implementación Descripción problema Existen muchos problemas, cuya resolución informática requiere de un enorme tiempo de cómputo. En la actualidad,

Más detalles

MODELADO DE OBJETOS. {brossi,pbritos,rgm}@itba.edu.ar

MODELADO DE OBJETOS. {brossi,pbritos,rgm}@itba.edu.ar MODELADO DE OBJETOS Bibiana ROSSI, Paola BRITOS y Ramón GARCIA MARTINEZ, CAPIS - Centro de Actualizacion Permanente en Ingeniería de Software Escuela de Posgrado. ITBA. 0. INTRODUCCION {brossi,pbritos,rgm}@itba.edu.ar

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

Una propuesta arquitectónica para integrar una herramienta BPMS y un sistema de gestión de reglas de negocio. Contexto

Una propuesta arquitectónica para integrar una herramienta BPMS y un sistema de gestión de reglas de negocio. Contexto Una propuesta arquitectónica para integrar una herramienta BPMS y un sistema de gestión de reglas de negocio Parra Julián Matias 1, Mg. Patricia Bazán 2, Lic. José Martinez Garro 3 1 3 Facultad de Informática

Más detalles

Arquitectura Java para el Cuarto Ejercicio. José Antonio Ruano Ampudia Técnico Superior de Proyecto Informático

Arquitectura Java para el Cuarto Ejercicio. José Antonio Ruano Ampudia Técnico Superior de Proyecto Informático Arquitectura Java para el Cuarto Ejercicio José Antonio Ruano Ampudia Técnico Superior de Proyecto Informático Sumario Introducción Arquitectura en n-capas Arquitectura y el Cuarto Examen Java y su modelo

Más detalles

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

Tecnología de objetos distribuidos y arquitectura de componentes. Índice. Bibliografía. Introducción. Tema V Bibliografía Tema V Tecnología de objetos distribuidos y arquitectura de componentes. Szyperski, C. 1998. Component Software. Addison-Wesley. Ruiz Cortés, 1998. A. CORBA: Una visión general. http://www.lsi.us.es/~aruiz

Más detalles

1. Posicionarse en la vista Services y seleccionar el ítem Servers. En el menú contextual del Mouse seleccionar la opción Add Server

1. Posicionarse en la vista Services y seleccionar el ítem Servers. En el menú contextual del Mouse seleccionar la opción Add Server Requisitos Versión 1.5 (o superior) de la JDK de Java NetBeans 6 como IDE de desarrollo JBoss 4.2.x como Application Server Variable de entorno de Windows JAVA_HOME apuntando al directorio de instalación

Más detalles

Taller de Sistemas de Información 2

Taller de Sistemas de Información 2 Taller de Sistemas de Información 2 Mensajeria 6 de Setiembre de 2012 Instituto de Computación Facultad de Ingeniería Universidad de la República de Uruguay Messaging La comunicación que hemos visto hasta

Más detalles

Arquitectura de Aplicaciones

Arquitectura de Aplicaciones 1 Capítulo 13: Arquitectura de aplicaciones. - Sommerville Contenidos del capítulo 13.1 Sistemas de procesamiento de datos 13.2 Sistemas de procesamiento de transacciones 13.3 Sistemas de procesamiento

Más detalles

I. Introducción a la programación orientada a objetos y al lenguaje JAVA Colegio Reuven Feuerstein Javier Navarro

I. Introducción a la programación orientada a objetos y al lenguaje JAVA Colegio Reuven Feuerstein Javier Navarro I. Introducción a la programación orientada a objetos y al lenguaje JAVA Colegio Reuven Feuerstein Javier Navarro Utilizando Clases Definidas en Java La manera de utilizar una clase previamente definida

Más detalles

JBoss Enterprise Middleware. Gustavo N Yasue IT Architect Latinoamérica Red Hat Latinoamérica gyasue@redhat.com

JBoss Enterprise Middleware. Gustavo N Yasue IT Architect Latinoamérica Red Hat Latinoamérica gyasue@redhat.com JBoss Enterprise Middleware Gustavo N Yasue IT Architect Latinoamérica Red Hat Latinoamérica gyasue@redhat.com UN FUTURO TAN ABIERTO COMO SEA POSIBLE CODIGO ABIERTO ESTANDARES ABIERTOS CONTENIDO ABIERTO

Más detalles

VISIÓN GENERAL HERRAMIENTAS COMERCIALES

VISIÓN GENERAL HERRAMIENTAS COMERCIALES VISIÓN GENERAL El servidor de MS SQL se ha convertido en un estándar en muchas partes de la América corporativa. Puede manejar volúmenes de datos grandes y se integra bien con otros productos de Microsoft.

Más detalles

SISTEMATIZACIÓN DE LA GENERACIÓN DE PRESUPUESTOS PARA PROYECTOS DE OBRA: DOCUMENTO DE VISIÓN SISTEMA DE ADMINISTRACIÓN DE MATERIALES DE TUBERÍA

SISTEMATIZACIÓN DE LA GENERACIÓN DE PRESUPUESTOS PARA PROYECTOS DE OBRA: DOCUMENTO DE VISIÓN SISTEMA DE ADMINISTRACIÓN DE MATERIALES DE TUBERÍA SISTEMATIZACIÓN DE LA GENERACIÓN DE PRESUPUESTOS PARA PROYECTOS DE OBRA: SISTEMA DE ADMINISTRACIÓN DE MATERIALES DE TUBERÍA PARA INARGOS LTDA. DOCUMENTO DE VISIÓN VERSIÓN 1.3 BOGOTÁ, COLOMBIA, ENERO 2012

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

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

Introducción. El curso se compone de dos módulos:

Introducción. El curso se compone de dos módulos: Introducción El programa de certificación ORACLE en Java SE, ofrece el nivel de certificación Oracle Certified Professional, Java SE 7 Programmer y está diseñado para personas que poseen una base sólida

Más detalles

Procesos de Negocios

Procesos de Negocios Procesos de Negocios Procesos de negocios Como dijimos en el Tema 1: los sistemas de información y las organizaciones se influyen entre sí: Los SI deben proveer la información que la organización necesita.

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

Resumen de clase Ejemplos creacionales. Ideas de Diseño sobre ejercicios anteriores

Resumen de clase Ejemplos creacionales. Ideas de Diseño sobre ejercicios anteriores Resumen de clase Ejemplos creacionales Ideas de Diseño sobre ejercicios anteriores 1 cuatrimestre 2009 Contenido EJEMPLO CLIENTES DE UNA TARJETA DE CRÉDITO: ENUNCIADO...3 SOBRE EL DOMINIO...3 SOLUCIÓN

Más detalles

Automatizando Procesos de Gestión con BPM Open Source ProcessMaker

Automatizando Procesos de Gestión con BPM Open Source ProcessMaker Automatizando Procesos de Gestión con BPM Open Source ProcessMaker Expositor: Fernando Espinoza León Director de proyectos OPEN TICS PERÚ http://www.opentics.pe Introducción BPM es un paradigma para la

Más detalles

1. Principales definiciones de los términos más usados en Internet.

1. Principales definiciones de los términos más usados en Internet. Webs municipales. 1. Principales definiciones de los términos más usados en Internet. Internet Web Página web Sitio web Portal web 2. Ventajas del uso de la página web en general Rapidez Comodidad Facilidad

Más detalles

Una computadora es un dispositivo electrónico, operando bajo el control de las instrucciones almacenadas en su propia unidad de memoria.

Una computadora es un dispositivo electrónico, operando bajo el control de las instrucciones almacenadas en su propia unidad de memoria. Informáticas I 1. Sistemas Operativos Para comprender el concepto de sistemas operativos y entender los diferentes tipos de ventanas disponibles lo primero que tenemos que cubrir algunas definiciones básicas.

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

Java en 2 horas. Rodrigo Santamaría

Java en 2 horas. Rodrigo Santamaría + Java en 2 horas Rodrigo Santamaría + Generalidades 2 Desarrollado por Sun en 1995 Hereda mucha de la sintaxis de C (1972) Fuertemente tipado y orientado a objetos Aplicaciones compiladas a bytecode Gestión

Más detalles

Notas. Introducción. Breve Introducción a los Sistemas Colaborativos: Groupware & Workflow. Palabras claves: Groupware, Workflow, BPCM, WfMC.

Notas. Introducción. Breve Introducción a los Sistemas Colaborativos: Groupware & Workflow. Palabras claves: Groupware, Workflow, BPCM, WfMC. Breve Introducción a los Sistemas Colaborativos: Groupware & Workflow Palabras claves: Groupware, Workflow, BPCM, WfMC. Introducción A partir de la llegada de las computadoras personales al ambiente empresarial

Más detalles

4. IMPLEMENTACIÓN. Que los nodos no estén muy cerca unos a otros. Que los nodos que estén conectados por aristas se dibujen cerca.

4. IMPLEMENTACIÓN. Que los nodos no estén muy cerca unos a otros. Que los nodos que estén conectados por aristas se dibujen cerca. 4. IMPLEMENTACIÓN Esta sección contiene todo lo relacionado con la implementación del sistema. Se encuentra la selección del algoritmo utilizado para implementar el grafo dirigido por fuerzas; las herramientas

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