Metodología
Bonita BPM es una alternativa de código abierto a BPM’s comerciales existentes,
consta de dos partes diferenciadas: Bonita BPM Studio y Bonita BPM Platform. La
primera es un ambiente gráfico que hace posible el modelado de procesos, para ello
dispone de un entorno de desarrollo con una barra de herramientas con elementos
BPMN para dibujar el flujo del diagrama de procesos definiendo las etapas,
transiciones, puntos de decisión y otros elementos del proceso (Ramakrishnan & Kaur,
2020).
Por su parte, el desarrollo de software basado en componentes es el proceso para definir,
implementar e integrar elementos en sistemas independientes débilmente acoplados.
Esto se ha convertido en una importante aproximación de desarrollo del software debido
a que los sistemas (software) son cada vez más grandes y complejos, y los clientes
demandan soluciones tecnológicas más confiables que sean desarrollados de manera
rápida y eficaz. Una de las soluciones para tratar esta complejidad y entregar sistemas
más precisos es la reutilización de componentes.
Los fundamentos de la ingeniería del software basada en componentes son:
1. Componentes independientes. Son completamente especificados por sus
interfaces. Debería haber una clara separación entre la interfaz de los
componentes y su implementación para que la ejecución de un elemento
pueda reemplazar por otro sin cambiar el sistema.
2. Estándares. Facilitan la integración de los componentes. Estos se incluyen
en un modelo de componentes y definen en el nivel más bajo como las
interfaces deberían especificarse y como se comunican los componentes.
3. Middleware. Proporciona soportes independientes y distribuidos que
trabajan juntos. Se necesita un soporte middleware que maneje las
comunicaciones de los componentes.
4. Proceso de desarrollo. Se adapta a la ingeniería del software basada en
componentes. Si se intenta añadir una aproximación basada en componentes
a un proceso de desarrollo que está adaptado a la producción de software
original, se puede observar que las suposiciones inherentes al proceso limitan
el potencial del CBSE (Sommerville, 2004).
En general, el desarrollo de software basado en componentes puede verse como una
extensión natural de la programación orientada a objetos dentro del ámbito de los
sistemas abiertos y distribuidos. El paradigma se basa en el uso de los componentes de
software como entidades básicas del modelo, entendiendo por componente una unidad
de composición de aplicaciones software que posee un conjunto de requisitos, y que ha
de poder ser desarrollado, adquirido, incorporado al sistema y compuesto con otros
componentes, de forma independiente en tiempo y espacio (Szyperski, 1998).
En el proceso CBSE, la reutilización con éxito de componentes requiere un proceso de
desarrollo adaptado a esta metodología contando con una serie pasos exigentes a
cumplir, en la siguiente Figura 1 se muestran las principales sub actividades dentro del
marco de trabajo relacionado.