SlideShare una empresa de Scribd logo
1 de 52
Descargar para leer sin conexión
Introducción a jBPM
Pablo Sepúlveda P.
JBUG Chile
pablo.sepulveda@ti-nova.cl
Acerca del instructor...
• Pablo Sepúlveda P.
• (Intento de) Arquitecto de Software
• Actualmente en:
– TI-Nova: Middleware Solutions Architect
– JBUG Chile: Miembro fundador
• Anteriormente:
– Fundación GNUCHILE: Director Ejecutivo
– Mozilla Chile: Developed Lead
– Etc, etc, etc...
• Contacto:
– Email: pablo.sepulveda@ti-nova.cl
– Website: http://www.psep.cl
– Twitter: @psep_cl
– GitHub: Psep
Advertencia
• Introducción al Software Libre, JEE y
Arquitectura de Software.
• Introducción al motor de procesos jBPM
y ejercicios prácticos de Laboratorio.
Agenda
Introducción al Software Libre, JEE
y la Arquitectura de Software
• Software libre es el que
respeta la libertad individual
de los usuarios.
• Se basa en:
– Ejecutar
– Copiar
– Distribuir
– Estudiar
¿Qué es el Software Libre?
“El copyright no es un derecho
natural sino un monopolio
artificial impuesto por el Estado
que limita el derecho natural de
los usuarios a copiar.”
Richard Matthew Stallman
• Algunas de las más populares…
Licencias Libres
Pronto en: http://www.jboss.cl y http://www.jbug.cl
@jbug_cl
• Standard Edition:
– APIs de Java (utils)
– Bajo supervisión del
Java Community
Process (JCP).
– Especificación JSR
(Java Specification
Request).
Java EE y Java SE
• Enterprise Edition:
– Plataforma empresarial
de Java.
– Incluye Java SE.
– Soporte de arquitecturas
por N capas.
– Ejecución mediante
servidor de aplicaciones.
– Plataforma líder del
mercado.
Java EE y Java SE
JEE abierto, ¿Plataformas
Privativas?
• ¿Por qué las soluciones no libres dominan el
mercado?
• Respaldo de grandes marcas.
• Experiencia y madurez en sus plataformas
(?)
• Lobby y otras prácticas (?)
• Soluciones empresariales enfocadas en
SOA.
• Definición de plataforma tecnológica
estándar (empresarial) de alto nivel de una
organización.
• Cada componente tecnológico es clasificado
y ordenado dentro de una capa.
• Conceptos de SOA y abstracción.
• Reutilización de componentes entre
sistemas.
Arquitectura de Referencia
¿Qué es SOA?
• Arquitectura Orientada a Servicios.
• Paradigma enfocado a sistemas distribuidos
y la abstracción.
• Permite escalabilidad, flexibilidad e
integración entre sistemas.
• Abstracción de procesos y reglas de negocio
como servicios.
• Aborda situaciones reales como el
encapsulamiento, desacoplamiento,
reutilización.
Modelo por Capas
Apache Ant:
• Herramienta (librería) de
compilación y despliegue (deploy).
• Configuración basada en XML.
• Descripción en build.xml
• Incluye libs y classpath declarados
en el proyecto.
• Incorporada por default en muchos
IDEs.
• Ejecución mediante comandos.
Ant y Maven
Ant y Maven
Ant y Maven
Apache Maven:
• Herramienta (librería) de
compilación y despliegue (deploy).
• Orientación a repositorios de
librerías (artefactos).
• Descripción en pom.xml,
simplificando su notación.
• Proyectos menos complejos y
ligeros.
• Incorporada por default en muchos
IDEs.
• Ejecución mediante comandos.
Ant y Maven
• ¿Qué es un control
de versiones?
• ¿Por qué usar un
control de
versiones?
• ¿CVS, SVN,
Mercurial, GIT?
Versionamiento con GIT
Introducción al motor de procesos
jBPM
Objetivos
• Ambiente jBPM de desarrollo.
• Conocimiento base de la plataforma.
• Conformación de reglas y procesos de
negocio.
• Implementación e integración.
Características de jBPM
• Aplicaciones Web (WAR).
• Funcionan bajo el servidor de
aplicaciones WildFly 8 (ex JBoss AS).
• ¿Para qué usan Ant?
• ¿Maven? Repositorio basado en
artefactos.
Características de jBPM
• Creación de Usuarios:
– Fichero properties de configuración
$JBOSS_HOME/standalone/configuration/use
rs.properties
admin=admin
krisv=krisv
psep=qwerty123
Características de jBPM
• Creando Roles:
– Fichero properties de configuración:
$JBOSS_HOME/standalone/configuration/role
s.properties
admin=admin,analyst,kiemgmt
krisv=admin,analyst
psep=admin,analista
~$ ant start.demo.noeclipse
http://localhost:8080/jbpm-console/
• Organización:
Conceptos de Repositorio
Lab: Creando una
Organización
• En el
administrador de
unidades
organizaciones,
crear: jbug.
• Default group ID:
cl.jbug.jbpm
Conceptos de Repositorio
• Integración con GIT mediante ngit. Posibilidad de
clonar, crear, listar.
Creación de Proyectos
• → New Project
• Otras opciones
(después de crear un
proyecto):
– BPM
– Regla de negocio
(tablas de decisión,
guiadas, DRL, DSL)
– Objetos
– Etc, etc.
Problemática de Laboratorio
• Se requiere desarrollar un proceso para la
asignación de beneficios.
• Los beneficios a otorgar son: vejez, viudez,
subsidio joven, aguinaldo.
• Básicamente, consta de: ingreso de la
solicitud, cálculo de beneficio, visación
(notificación).
• Los roles involucrados son operador y
analista.
Lab: Creando un Proyecto
• New Item → Project
Lab: Creando un Proyecto
Atributos:
• Project Name: beneficios
• Group ID: cl.jbug.jbpm
• Artifact ID: beneficios
• Version: 1.0
Modelo de Datos en jBPM
Laboratorio: Modelo de Datos
• Nuevo “Data Object” (POJO) →
Solicitante
• Package: cl.jbug.jbpm.beneficios
• Fields: run (Integer), nombre (String),
edad (Integer), estadoCivil (Integer),
numHijos (Integer), sexo (Integer),
montoBono (int), mensaje (String).
• Basados en Drools.
• Creación de Regla
Guiada:
– Nueva Regla
– Import de objetos
– Extends, condición
– Acción
Reglas de Negocio
Lab: Modelar Reglas de Negocio
• Vejez
– Bono de $50000.-
– Solicitante mayor a 65 años e ingresos
menores o iguales a $150000.-
• Subsidio Joven
– Bono: el resultado de 350000 – el sueldo.
– Solicitante menor a 25 años e ingresos
menores o iguales a $250000.-
Lab: Modelar Reglas de Negocio
• Viudez
– Bono: $50000 * N° de beneficiarios (viuda
e hijos).
– Estado civil del solicitante debe ser viudez
(4) e ingresos menores.
• Aguinaldo
– Bono: $10000 * hijo.
– Solicitante con un hijo o más e ingresos
menores a $250000.-
Escenarios de Prueba
• Diseño de
casos de
pruebas para
reglas de
negocio (diseño
y resultados).
• New Item →
Test Scenario
Diseño de Procesos
• Diseño de procesos bajo estándar
BPMN 2.0.
• jBPM Web Designer.
• Formato XML (extensión .bpmn2).
• Exportación: bpmn2, JSON, SVG, PNG.
• Creación: New Item → Business
Process.
Lab: Creando un Proceso
• Proceso: IngresoSolicitud
• Revisión de Process ID
• Importaciones
• Variables
• Documentación
Tipos de Tasks
• Algunos de los más comunes:
– Usuario (Human Task)
– Reglas de Negocio (Business Rule)
– Script
• Propiedades dependiendo de cada
tarea.
Lab: Proceso de Beneficios
Formularios
• HTML generados
automáticamente
por la plataforma
jBPM.
• Basados en los
datos de entrada
del proceso/tareas.
• Personalizables.
Lab: Formularios Personalizados
Generación de Proyecto jBPM
• Deploy
• Deployment y Process definitions
• Ejecución
• Tasks List
¿Integración?
• APIs:
– RUNTIME
https://docs.jboss.org/jbpm/v6.2/userguid
e/jBPMRemoteAPI.html#remote.java.api
– REST
https://docs.jboss.org/jbpm/v6.2/usergu
ide/jBPMRemoteAPI.html#d0e14165
Lab: Ejemplo de Integración
• Utilización de Eclipse (JBoss Developer Studio) y
GIT.
• Clonar desde GitHub:
– App Web
https://github.com/Psep/beneficiosweb
• Modificación según implementación.
• Compilación y Deploy.
• Pruebas.
Extras
• (Instalación) Configurar jBPM con una base de datos
(MySQL, PostgreSQL, etc) y Dominios de Seguridad
https://docs.jboss.org/jbpm/v6.2/userguide/jBPMInstaller.
html#d0e950
• Guía de Inicio
https://docs.jboss.org/jbpm/v6.2/userguide/jBPMGettingSta
rted.html
• Drools http://www.drools.org/
• jBPM http://jbpm.org/
• Más ejemplos
https://docs.jboss.org/jbpm/v6.2/userguide/jBPMExample
s.html#d0e1795
¡Muchas gracias por su
Atención!

Más contenido relacionado

Similar a Introducción a jBPM 6

Conceptos generales de sia
Conceptos generales de siaConceptos generales de sia
Conceptos generales de sia
Antonio Atenas
 
Introducción al proceso unificado de desarrollo de software en Curso de Anali...
Introducción al proceso unificado de desarrollo de software en Curso de Anali...Introducción al proceso unificado de desarrollo de software en Curso de Anali...
Introducción al proceso unificado de desarrollo de software en Curso de Anali...
Educagratis
 

Similar a Introducción a jBPM 6 (20)

Conceptos generales de sia
Conceptos generales de siaConceptos generales de sia
Conceptos generales de sia
 
Conceptos generales de sia
Conceptos generales de siaConceptos generales de sia
Conceptos generales de sia
 
Buenas prácticas que debes seguir en la administración de tu SQL Server
Buenas prácticas que debes seguir en la administración de tu SQL ServerBuenas prácticas que debes seguir en la administración de tu SQL Server
Buenas prácticas que debes seguir en la administración de tu SQL Server
 
Clase 11
Clase 11Clase 11
Clase 11
 
Ingenieria de softwrae vol1 v4 2
Ingenieria de softwrae vol1 v4 2Ingenieria de softwrae vol1 v4 2
Ingenieria de softwrae vol1 v4 2
 
Ingenieria de softwrae vol1 v4 2
Ingenieria de softwrae vol1 v4 2Ingenieria de softwrae vol1 v4 2
Ingenieria de softwrae vol1 v4 2
 
Symfony-Community: Introducción a Symfony Framework
Symfony-Community: Introducción a Symfony FrameworkSymfony-Community: Introducción a Symfony Framework
Symfony-Community: Introducción a Symfony Framework
 
RUP.pdf
RUP.pdfRUP.pdf
RUP.pdf
 
DBA del Futuro (Un nuevo paradigma)
DBA del Futuro (Un nuevo paradigma)DBA del Futuro (Un nuevo paradigma)
DBA del Futuro (Un nuevo paradigma)
 
Metodología
MetodologíaMetodología
Metodología
 
Metodología de SI
Metodología de SIMetodología de SI
Metodología de SI
 
Introducción al proceso unificado de desarrollo de software en Curso de Anali...
Introducción al proceso unificado de desarrollo de software en Curso de Anali...Introducción al proceso unificado de desarrollo de software en Curso de Anali...
Introducción al proceso unificado de desarrollo de software en Curso de Anali...
 
Herramientas para la medicion de desempeño PHPConMX 2012
Herramientas para la medicion de desempeño  PHPConMX 2012Herramientas para la medicion de desempeño  PHPConMX 2012
Herramientas para la medicion de desempeño PHPConMX 2012
 
metodologias de desarrollo.ppt
metodologias de desarrollo.pptmetodologias de desarrollo.ppt
metodologias de desarrollo.ppt
 
Web Day Devops - Plain Concepts
Web Day Devops - Plain ConceptsWeb Day Devops - Plain Concepts
Web Day Devops - Plain Concepts
 
Flujo de desarrollo para drupal (PFC)
Flujo de desarrollo para drupal (PFC)Flujo de desarrollo para drupal (PFC)
Flujo de desarrollo para drupal (PFC)
 
¡Optimiza tu WordPress para que vuele! Primeros pasos en WPO (Web Performance...
¡Optimiza tu WordPress para que vuele! Primeros pasos en WPO (Web Performance...¡Optimiza tu WordPress para que vuele! Primeros pasos en WPO (Web Performance...
¡Optimiza tu WordPress para que vuele! Primeros pasos en WPO (Web Performance...
 
Fases de un proyecto de desarrollo de Softwareo Orientado a la Web-Charles Fr...
Fases de un proyecto de desarrollo de Softwareo Orientado a la Web-Charles Fr...Fases de un proyecto de desarrollo de Softwareo Orientado a la Web-Charles Fr...
Fases de un proyecto de desarrollo de Softwareo Orientado a la Web-Charles Fr...
 
Ciclo de vida
Ciclo de vidaCiclo de vida
Ciclo de vida
 
Testing y Open Source ¿Choque de dos mundos?
Testing y Open Source ¿Choque de dos mundos?Testing y Open Source ¿Choque de dos mundos?
Testing y Open Source ¿Choque de dos mundos?
 

Último

QUINTA SEXTA GENERACION de COMPUTADORAS
QUINTA  SEXTA GENERACION de COMPUTADORASQUINTA  SEXTA GENERACION de COMPUTADORAS
QUINTA SEXTA GENERACION de COMPUTADORAS
Marc Liust
 
Editorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdfEditorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdf
Yanitza28
 
microsoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamtemicrosoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamte
2024020140
 

Último (16)

infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptxinfor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
 
Redes Neuronales profundas convolucionales CNN ́s-1.pdf
Redes Neuronales profundas convolucionales CNN ́s-1.pdfRedes Neuronales profundas convolucionales CNN ́s-1.pdf
Redes Neuronales profundas convolucionales CNN ́s-1.pdf
 
AVANCES TECNOLOGICOS DEL SIGLO XXI. 10-08..pptx
AVANCES TECNOLOGICOS  DEL SIGLO XXI. 10-08..pptxAVANCES TECNOLOGICOS  DEL SIGLO XXI. 10-08..pptx
AVANCES TECNOLOGICOS DEL SIGLO XXI. 10-08..pptx
 
Editorial. Grupo de 12B. La Salle Margarita.pdf
Editorial. Grupo de 12B. La Salle Margarita.pdfEditorial. Grupo de 12B. La Salle Margarita.pdf
Editorial. Grupo de 12B. La Salle Margarita.pdf
 
herramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el temaherramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el tema
 
10°8 - Avances tecnologicos del siglo XXI 10-8
10°8 - Avances tecnologicos del siglo XXI 10-810°8 - Avances tecnologicos del siglo XXI 10-8
10°8 - Avances tecnologicos del siglo XXI 10-8
 
Función del analizador léxico.pdf presentacion
Función del analizador léxico.pdf presentacionFunción del analizador léxico.pdf presentacion
Función del analizador léxico.pdf presentacion
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
QUINTA SEXTA GENERACION de COMPUTADORAS
QUINTA  SEXTA GENERACION de COMPUTADORASQUINTA  SEXTA GENERACION de COMPUTADORAS
QUINTA SEXTA GENERACION de COMPUTADORAS
 
Editorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdfEditorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdf
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdfpresentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
 
presentación del desensamble y ensamble del equipo de computo en base a las n...
presentación del desensamble y ensamble del equipo de computo en base a las n...presentación del desensamble y ensamble del equipo de computo en base a las n...
presentación del desensamble y ensamble del equipo de computo en base a las n...
 
microsoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamtemicrosoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamte
 
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptxTarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
 
2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida
2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida
2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida
 

Introducción a jBPM 6

  • 1. Introducción a jBPM Pablo Sepúlveda P. JBUG Chile pablo.sepulveda@ti-nova.cl
  • 2. Acerca del instructor... • Pablo Sepúlveda P. • (Intento de) Arquitecto de Software • Actualmente en: – TI-Nova: Middleware Solutions Architect – JBUG Chile: Miembro fundador • Anteriormente: – Fundación GNUCHILE: Director Ejecutivo – Mozilla Chile: Developed Lead – Etc, etc, etc... • Contacto: – Email: pablo.sepulveda@ti-nova.cl – Website: http://www.psep.cl – Twitter: @psep_cl – GitHub: Psep
  • 4.
  • 5. • Introducción al Software Libre, JEE y Arquitectura de Software. • Introducción al motor de procesos jBPM y ejercicios prácticos de Laboratorio. Agenda
  • 6. Introducción al Software Libre, JEE y la Arquitectura de Software
  • 7. • Software libre es el que respeta la libertad individual de los usuarios. • Se basa en: – Ejecutar – Copiar – Distribuir – Estudiar ¿Qué es el Software Libre?
  • 8.
  • 9. “El copyright no es un derecho natural sino un monopolio artificial impuesto por el Estado que limita el derecho natural de los usuarios a copiar.” Richard Matthew Stallman
  • 10. • Algunas de las más populares… Licencias Libres
  • 11. Pronto en: http://www.jboss.cl y http://www.jbug.cl @jbug_cl
  • 12. • Standard Edition: – APIs de Java (utils) – Bajo supervisión del Java Community Process (JCP). – Especificación JSR (Java Specification Request). Java EE y Java SE
  • 13. • Enterprise Edition: – Plataforma empresarial de Java. – Incluye Java SE. – Soporte de arquitecturas por N capas. – Ejecución mediante servidor de aplicaciones. – Plataforma líder del mercado. Java EE y Java SE
  • 14. JEE abierto, ¿Plataformas Privativas? • ¿Por qué las soluciones no libres dominan el mercado? • Respaldo de grandes marcas. • Experiencia y madurez en sus plataformas (?) • Lobby y otras prácticas (?) • Soluciones empresariales enfocadas en SOA.
  • 15. • Definición de plataforma tecnológica estándar (empresarial) de alto nivel de una organización. • Cada componente tecnológico es clasificado y ordenado dentro de una capa. • Conceptos de SOA y abstracción. • Reutilización de componentes entre sistemas. Arquitectura de Referencia
  • 16. ¿Qué es SOA? • Arquitectura Orientada a Servicios. • Paradigma enfocado a sistemas distribuidos y la abstracción. • Permite escalabilidad, flexibilidad e integración entre sistemas. • Abstracción de procesos y reglas de negocio como servicios. • Aborda situaciones reales como el encapsulamiento, desacoplamiento, reutilización.
  • 18. Apache Ant: • Herramienta (librería) de compilación y despliegue (deploy). • Configuración basada en XML. • Descripción en build.xml • Incluye libs y classpath declarados en el proyecto. • Incorporada por default en muchos IDEs. • Ejecución mediante comandos. Ant y Maven
  • 20. Ant y Maven Apache Maven: • Herramienta (librería) de compilación y despliegue (deploy). • Orientación a repositorios de librerías (artefactos). • Descripción en pom.xml, simplificando su notación. • Proyectos menos complejos y ligeros. • Incorporada por default en muchos IDEs. • Ejecución mediante comandos.
  • 22. • ¿Qué es un control de versiones? • ¿Por qué usar un control de versiones? • ¿CVS, SVN, Mercurial, GIT? Versionamiento con GIT
  • 23. Introducción al motor de procesos jBPM
  • 24. Objetivos • Ambiente jBPM de desarrollo. • Conocimiento base de la plataforma. • Conformación de reglas y procesos de negocio. • Implementación e integración.
  • 25. Características de jBPM • Aplicaciones Web (WAR). • Funcionan bajo el servidor de aplicaciones WildFly 8 (ex JBoss AS). • ¿Para qué usan Ant? • ¿Maven? Repositorio basado en artefactos.
  • 26. Características de jBPM • Creación de Usuarios: – Fichero properties de configuración $JBOSS_HOME/standalone/configuration/use rs.properties admin=admin krisv=krisv psep=qwerty123
  • 27. Características de jBPM • Creando Roles: – Fichero properties de configuración: $JBOSS_HOME/standalone/configuration/role s.properties admin=admin,analyst,kiemgmt krisv=admin,analyst psep=admin,analista
  • 30. Lab: Creando una Organización • En el administrador de unidades organizaciones, crear: jbug. • Default group ID: cl.jbug.jbpm
  • 31. Conceptos de Repositorio • Integración con GIT mediante ngit. Posibilidad de clonar, crear, listar.
  • 32. Creación de Proyectos • → New Project • Otras opciones (después de crear un proyecto): – BPM – Regla de negocio (tablas de decisión, guiadas, DRL, DSL) – Objetos – Etc, etc.
  • 33. Problemática de Laboratorio • Se requiere desarrollar un proceso para la asignación de beneficios. • Los beneficios a otorgar son: vejez, viudez, subsidio joven, aguinaldo. • Básicamente, consta de: ingreso de la solicitud, cálculo de beneficio, visación (notificación). • Los roles involucrados son operador y analista.
  • 34. Lab: Creando un Proyecto • New Item → Project
  • 35. Lab: Creando un Proyecto Atributos: • Project Name: beneficios • Group ID: cl.jbug.jbpm • Artifact ID: beneficios • Version: 1.0
  • 36. Modelo de Datos en jBPM
  • 37. Laboratorio: Modelo de Datos • Nuevo “Data Object” (POJO) → Solicitante • Package: cl.jbug.jbpm.beneficios • Fields: run (Integer), nombre (String), edad (Integer), estadoCivil (Integer), numHijos (Integer), sexo (Integer), montoBono (int), mensaje (String).
  • 38. • Basados en Drools. • Creación de Regla Guiada: – Nueva Regla – Import de objetos – Extends, condición – Acción Reglas de Negocio
  • 39. Lab: Modelar Reglas de Negocio • Vejez – Bono de $50000.- – Solicitante mayor a 65 años e ingresos menores o iguales a $150000.- • Subsidio Joven – Bono: el resultado de 350000 – el sueldo. – Solicitante menor a 25 años e ingresos menores o iguales a $250000.-
  • 40. Lab: Modelar Reglas de Negocio • Viudez – Bono: $50000 * N° de beneficiarios (viuda e hijos). – Estado civil del solicitante debe ser viudez (4) e ingresos menores. • Aguinaldo – Bono: $10000 * hijo. – Solicitante con un hijo o más e ingresos menores a $250000.-
  • 41. Escenarios de Prueba • Diseño de casos de pruebas para reglas de negocio (diseño y resultados). • New Item → Test Scenario
  • 42. Diseño de Procesos • Diseño de procesos bajo estándar BPMN 2.0. • jBPM Web Designer. • Formato XML (extensión .bpmn2). • Exportación: bpmn2, JSON, SVG, PNG. • Creación: New Item → Business Process.
  • 43. Lab: Creando un Proceso • Proceso: IngresoSolicitud • Revisión de Process ID • Importaciones • Variables • Documentación
  • 44. Tipos de Tasks • Algunos de los más comunes: – Usuario (Human Task) – Reglas de Negocio (Business Rule) – Script • Propiedades dependiendo de cada tarea.
  • 45. Lab: Proceso de Beneficios
  • 46. Formularios • HTML generados automáticamente por la plataforma jBPM. • Basados en los datos de entrada del proceso/tareas. • Personalizables.
  • 48. Generación de Proyecto jBPM • Deploy • Deployment y Process definitions • Ejecución • Tasks List
  • 49. ¿Integración? • APIs: – RUNTIME https://docs.jboss.org/jbpm/v6.2/userguid e/jBPMRemoteAPI.html#remote.java.api – REST https://docs.jboss.org/jbpm/v6.2/usergu ide/jBPMRemoteAPI.html#d0e14165
  • 50. Lab: Ejemplo de Integración • Utilización de Eclipse (JBoss Developer Studio) y GIT. • Clonar desde GitHub: – App Web https://github.com/Psep/beneficiosweb • Modificación según implementación. • Compilación y Deploy. • Pruebas.
  • 51. Extras • (Instalación) Configurar jBPM con una base de datos (MySQL, PostgreSQL, etc) y Dominios de Seguridad https://docs.jboss.org/jbpm/v6.2/userguide/jBPMInstaller. html#d0e950 • Guía de Inicio https://docs.jboss.org/jbpm/v6.2/userguide/jBPMGettingSta rted.html • Drools http://www.drools.org/ • jBPM http://jbpm.org/ • Más ejemplos https://docs.jboss.org/jbpm/v6.2/userguide/jBPMExample s.html#d0e1795
  • 52. ¡Muchas gracias por su Atención!