Title: Web Application Development Focused on BP Specifications
1Web Application Development Focused on BP
Specifications
- Victoria Torres, Pau Giner and Vicente Pelechano
- OO-Method Research Group
- Department of Information Systems and Computation
- Technical University of Valencia, Spain
2Agenda
- Introducción
- Rol de los PN en el Proceso de Desarrollo
- Desarrollo Dirigido por Modelos
- Definición de Modelos
- Transformación de Modelos
- OOWS. Un método Web con soporte a PN
- Conclusiones
3Introducción
- Los BPMS
- Proporcionan herramientas para el diseño
ejecución y monitorización de PN. - Dirigido a gerentes para analizar y adaptar los
PN. - Integración de PN en app. Web corporativas
- Ingeniería Web ? Procesos de Negocio
- Uso de estándares
- BPMN, notación gráfica estándar para modelar PN
(OMG) - WS-BPEL, especificación para la ejecución de PN
(adoptada por OASIS)
4Introducción
- Objetivo ? Generación Automática de Aplicaciones
Web Dirigidas por Procesos de Negocio - Modelado basado en funcionalidad de
- El propio sistema
- Sistemas externos (a través de Servicios Web)
- Tener en cuenta Procesos de Negocio
- Largos y cortos
- con Tareas en las que participan humanos
5Rol de PN en el Proceso de Desarrollo
- Las descripciones de PN definen
- Qué objetivos tiene la organización.
- Cómo conseguir dichos objetivos.
- Uso de las descripciones de PN
- Pasivo Documentación ?
- Activo ?
- Como especificación ejecutable
- Reutilizable en el proceso de desarrollo de SW
6Desarrollo Dirigido por Modelos
- Definición del sistema desde el punto de vista
del espacio del dominio. - Concentración en el dominio
- Los aspectos tecnológicos no son considerados
- MDA
- Propuesta de la OMG para llevar a cabo el DSDM
- Definición del sistema en diferentes niveles de
abstracción (CIM, PIM, PSM)
7Desarrollo Dirigido por Modelos
- Definición de Procesos de Negocio siguiendo MDA
- CIM Definición de Procesos Abstractos (BPMN)
- PIM Definición Privada de Procesos (BPMN)
- PSM Definición ejecutable de PN (WS-BPEL)
- Aplicación de MDA en dos fases
- Definición/Integración de Modelos
- Transformación de Modelos
8Desarrollo Dirigido por Modelos
- Definición de Modelos
- Separación de aspectos (concerns)
- Estructura
- Comportamiento
- Procesos
- Navegación
- Presentación
- etc.
- Disponibilidad de herramientas para su manejo.
- Borland Together Architect 2006
- Proyecto STP de Eclipse
9Desarrollo Dirigido por Modelos
- Definición de PN (nivel PIM)
- BPMN
- Notación gráfica para el modelado de Procesos de
Negocio. - Propuesto por el Business Process Management
Initiative (BPMI). - Especificación final adoptada por la OMG en 2006.
- Estandarización de esta notación frente a UML.
- La motivación de esta notación es que sea
entendible por todas las personas involucradas en
el proceso (participantes, analistas, etc.) - Proporciona mapping a WS-BPEL el cual utiliza los
principios de los modelos matemáticos formales
como pi-calculus).
10Desarrollo Dirigido por Modelos
- Definición de PN (nivel PSM)
- WS-BPEL
- Permite la composición de Servicios Web
- Basado en XML y tecnología de Servicios Web
- WSDL extendido para definir el interfaz
- XML Schema para la definición de tipos
- XPath para la definición de consultas
- Procesos definidos en WS-BPEL también son
servicios. - Motores de procesos que soportan WS-BPEL
- ActiveBPEL, Oracle BPEL Process Manager,
Microsoft BizTalk Server, Apache Ode
11Transformación de Modelos
- Transformaciones
- Modelo-a-Modelo
- BPMN ? Babel Input Business Process Model
- WS-BPEL Mod. Estructural Modelo de Servicios
- ? Completo ejecutable WS-BPEL
- BPMN ? Modelo Navegacional de OOWS
- ? Atlas Transformation Language (ATL)
- Modelo-a-Texto
- BPMN ? WSDL XSD
- Modelo Navegacional ? Págs. Web dinámicas
- ? MOFScript
12Transformación de Modelos
- Generación ejecutable del PN
Modelo Estructural
Modelo De Servicios
Modelo de Procesos de Negocio
Model-to-Model Transformation
Modelo BPMN (Babel)
ATL
Model-to-Model Transformation
BPMN Model
Babel BPMN2BPEL
Model-to-Text Transformation
2
Partner Link
MOFScript
Definición parcial de WS-BPEL
Variables
2
Correlation Sets
Definición Parcial de WS-BPEL
2
Activities
Estructura de un WS-BPEL
WSDL XSD
13Transformación de Modelos
- Generación del Interfaz de Usuario
Model-to-Model Transformation
Modelo Navegacional (básico) OOWS
ATL
Model-to-Text MOFScript
2
BPMN Model
Manipulación por el desarrollador
Modelo Navegacional (completo) OOWS
Págs. Web (Tapestry)
14OOWS
OOWS
OO-Method
Modelo Estructural (Diagrama de clases)
Modelo de Procesos de Negocio
Modelo Navegacional
ESPACIO DEL PROBLEMA
Modelo Funcional
Modelo de Presentación
Modelo de Servicios
Modelo Dinámico (Diagrama STD)
Capa de presentación
Composición de Servicios
Capa de Servicios
ESPACIO DE LA SOLUCIÓN
asp, jsp, php, perl, etc.
SOAP Web Services
WS-BPEL
15OOWS
PRESENTACIÓN
Servicios Web SOAP
Págs. Web dinámicas (asp, jsp, php, perl, etc.)
LÓGICA
MOTOR PROCESOS
.NET, C, etc.
PERSISTENCIA
RDBM, XML
16Conclusiones
- Los PN juegan un papel muy importante durante el
proceso de desarrollo de software. - Dentro del esquema MDA
- CIM Los PN representan requisitos
- PIM Los PN representan requisitos concretos
- PSM Los PN representan procesos ejecutables
- Utilizar los PN de forma activa
- Que puedan ejecutarse
- Que puedan utilizarse para generar otras partes
del sistema. - El éxito de MDA se debe a
- Editores gráficos (BPMN, XML, etc.)
- Herramientas para la manipulación de metamodelos
(EMF, etc.) - Lenguajes de Transformación (ATL, QVT, MOFScript,
etc.)
17Nos vemos mañana
18Gr ci s