Pontificia Universidad Javeriana TBA (Tool guide for BPM Agility) Visión y Especificación de Requerimientos Version 1.0 TBA Vision TBA_Visión_V1.0 Version: 1.0 Date: <27/ene/12> Historial de Revisión del Documento Date 27/Ene/12 CIS1130IS07 Version 1.0 Description Corrección global del documento TBA, 2012 Author Christian Lemus Page 2 TBA Vision TBA_Visión_V1.0 Version: 1.0 Date: <27/ene/12> Contenido 1. 2. 3. Introducción 4 1.1 1.2 1.3 1.4 1.5 4 4 4 4 5 Propósito Alcance Definiciones y Acrónimos Referencias Reseña Posicionamiento 5 2.1 2.2 2.3 Oportunidad de Negocio Formulación del problema Posición esperada del producto 5 5 6 Descripción de Usuarios e Interesados 6 3.1 3.2 3.3 3.4 6 6 7 7 7 7 8 8 8 8 8 9 Resumen de Interesados Resumen de usuarios Ambiente de usuario Perfiles de los interesados 3.4.1 Compañías del Sector financiero colombiano 3.4.2 Compañías desarrolladoras de soluciones BPM. 3.5 Perfiles de Usuario 3.5.1 Diseñador 3.5.2 Desarrollador 3.6 Requerimientos de usuario/interesado 3.6.1 Obtención de Requerimientos 3.6.2 Clasificación de requerimientos 4. Resumen del producto CIS1130IS07 10 TBA, 2012 Page 3 TBA Vision TBA_Visión_V1.0 Version: 1.0 Date: <27/ene/12> Visión y especificación de requerimientos 1. Introducción El desarrollo de TBA pretende estimular el uso de la plataforma adquirida por una compañía para el desarrollo BPM, para TBA específicamente esta plataforma ha de ser Oracle BPM, el desarrollo pretende apoyar la guía metodológica generada específicamente para la herramienta apoyando las practicas recomendadas en el diseño de procesos de negocio. La plantilla usada para este documento fue extraída de [1]. 1.1 Propósito El propósito de este documento es el de describir la planeación del proceso de desarrollo de TBA, para el apoyo del diseño de procesos de negocio en un proyecto BPM del sector financiero colombiano. 1.2 Alcance El desarrollo de TBA como ya se dijo va orientado al diseño de procesos de negocio del sector financiero colombiano, dado que es un sector maduro, con sus procesos bien definidos, y con la necesidad del desarrollo de alta calidad que responda a la velocidad del mercado, y a la alta competencia a nivel mundial a la que se ve enfrentado este sector. [2] 1.3 Definiciones y Acrónimos B I J S T X BPM: Business Process Management BPMN: Business Process Management Notation IDE: Integrated Development Enviroment JDeveloper: IDE para el desarrollo en Java desarrollado por Oracle SRS: Software Requirement Specification TBA: Tool guide for BPM Agility XML: Extensive Markup Language 1.4 Referencias [1] «Vision (Small Project)». [Online]. Available: http://www.ts.mah.se/RUP/RationalUnifiedProcess/webtmpl/templates/req/rup_vision_sp.htm. [Accessed: 08Dic-2011]. [2] Banco de la Republica, «Reporte de Mercados Financieros 3er Trimestre 2011», Nov-2011. [Online]. Available: http://www.banrep.gov.co/documentos/informes-economicos/pdf/Reporte%20de%20Mercados_julsep_2011.pdf. [3] Banco de la Republica, «Reporte de Mercados Financieros 2do Trimestre 2011», Ago-2011. [Online]. Available: http://www.banrep.gov.co/documentos/informes-economicos/pdf/Reporte%20de%20Mercados_abrjun_2011.pdf. [4] Banco de la Republica, «Reporte de Mercados Financieros 1er Trimestre 2011», May-2011. [Online]. Available: http://www.banrep.gov.co/documentos/informes-economicos/pdf/Reporte%20de%20Mercados_enemar_2011.pdf. [5] Banco de la Republica, «Sector financiero flujos - Serie anual 1990 - 2008 - millones de pesos». 2009. [6] Oracle, «Oracle Business Process Management», 2008. [Online]. Available: http://www.oracle.com/technetwork/middleware/bpm/overview/bpm-datasheet-132009.pdf. [7] «Oracle JDeveloper - Official Home Page». [Online]. Available: http://www.oracle.com/technetwork/developer-tools/jdev/overview/index.html. [Accessed: 27-Ene-2012]. [8] IEEE Recommended Practice for Software Requirements Specifications. 1998. [9] Oracle, «Overview of Business Process Design». [Online]. Available: http://docs.oracle.com/cd/E21764_01/doc.1111/e15176/intro_proc_des.htm. [Accessed: 28-Dic-2011]. [10] «Capturing Architectural Requirements». [Online]. Available: CIS1130IS07 TBA, 2012 Page 4 TBA Vision TBA_Visión_V1.0 Version: 1.0 Date: <27/ene/12> http://www.ibm.com/developerworks/rational/library/4706.html#N100A7. [Accessed: 27-Ene-2012]. 1.5 Reseña Este documento hace una descripción detallada del producto desarrollado en este proyecto TBA, expone inicialmente el posicionamiento de la herramienta a desarrollar, para luego describir en detalle las características que conforman TBA. 2. Posicionamiento 2.1 Oportunidad de Negocio El sector financiero a nivel mundial se ha caracterizado por ser un sector maduro, evidencia de esto es el desarrollo de los mercados financieros en el transcurrir del año 2011[2–4], que pese al desastre natural en Japón y a los recortes en las calificaciones de deuda de algunos países Europeos, se mantiene como un sector fuerte y más estable que el sector real [5], entiéndase por sector real, aquel conformado por las actividades agropecuarias, industriales y de servicios, excluyendo de estas últimas las actividades financieras. Frente al nerviosismo con respecto a la crisis de los mercados externos, el sector financiero se mantiene como un sector fuerte en la economía colombiana[3], esto ha generado dos fenómenos que fundamentan la oportunidad que se vio en este trabajo de grado, debido a una mayor percepción de riesgo, la demanda de servicios financieros debido a la estabilidad de este sector aumentó críticamente, lo cual exige mayor calidad en la prestación de sus servicios, para estar a la altura del crecimiento de su mercado. El segundo fenómeno se da dentro del crecimiento económico colombiano frente al mercado extranjero, que debido a la fluctuación de precios en el sector real causo desconfianza tanto en los comerciantes como en los consumidores, esto representa un reto para las compañías del sector financiero, pues la calidad de los servicios, deben estar a la altura de un consumidor más precavido. Específicamente, la problemática que este trabajo de grado ataco, fue la de apoyar aquellos desarrollos BPM, iniciados en compañías del sector financiero como respuesta a la exigencia de mejor calidad de sus servicios. El papel que pretende jugar la herramienta TBA, y la metodología que lo acompaña, es el de la mejora de procesos de software, específicamente el análisis y diseño de procesos de negocio en un desarrollo BPM, garantizando una mayor calidad en el producto final generado en esta naturaleza de proyectos. 2.2 Formulación del problema En esta sección se presenta el problema en el cual se vio la necesidad de desarrollar este software. Pregunta Afecta Impacto esperado Objetivo que pretende cumplir CIS1130IS07 ¿Cómo hacer para que los proyectos BPM del sector financiero en Colombia sean más exitosos? Entendiéndose por exitosos que se realice una integración con la plataforma adquirida, un mejor proceso de aprendizaje, reducción de costos y mayor eficiencia en la realización del proyecto, implementación, uso, instalación, etc. Las medianas empresas del sector financiero colombiano Se espera que el uso de la herramienta TBA, mejore la calidad de los proyectos BPM, inicialmente en proyectos orientados al sector financiero colombiano, posteriormente, es de esperar que de convertirse en un factor crítico en el éxito de estos proyectos, TBA se extienda a otros sectores de la industria colombiana, y también es de esperar que se extienda su uso en otras suites BPM, aparte de la elegida para corroborar los resultados en este trabajo de grado. Elaborar un software como una herramienta metodológica auto contenida, que refinar y guiar el diseño de procesos de negocio (BPM) de la cadena de valor de las medianas empresas en el sector financiero colombiano, que se TBA, 2012 Page 5 TBA Vision TBA_Visión_V1.0 Version: 1.0 Date: <27/ene/12> caracteriza por ser un sector cuyos procesos se encuentran muy bien definidos dada la madurez del mercado al que pertenece. 2.3 Posición esperada del producto Esta sección resume la unicidad del producto a desarrollar. Para Las compañías del sector financiero colombiano Quienes Se encuentran en una gran preocupación dado que no aprovechan la solución BPM que adquirieron (Oracle BPM) y no ven el retorno de semejante inversión. Es un producto que funciona de la mano de la suite Oracle BPM, como extensión embebida en su IDE JDeveloper. Hace del diseño de procesos de negocio, una actividad más refinada y orientada a la calidad del desarrollo. Marca la diferencia al tratar equilibrar el alto nivel de un diseño BPM, con su posterior desarrollo que por naturaleza, necesita que la información este un poco más aterrizada TBA Que Este Producto 3. Descripción de Usuarios e Interesados Los potenciales interesados en esta herramienta, son aquellos equipos de desarrollo que se encarguen de la implementación de procesos de negocio del sector financiero colombiano, y por ser TBA una herramienta de acompañamiento al diseño de dichos procesos, los usuarios que en primera instancia se atisban son los diseñadores y los desarrolladores de estos equipos de trabajo. 3.1 Resumen de Interesados Nombre Representa Rol Compañías del Sector financiero colombiano El segmento del mercado que ve en BPM un modo de adaptarse a la velocidad del mercado, pero que son compañías que son consientes que la suite adquirida no esta siendo plenamente aprovechada. El conjunto de usuarios que verían en TBA un factor de éxito en su desarrollo BPM, desde una perspectiva de calidad de software y de mejora de procesos de software Aunque no son directos implicados, actúan como el cimiento de toda investigación realizada para la construcción de la guía metodológica contenida en TBA. Compañías desarrolladoras de soluciones BPM 3.2 Agrupa los posibles usuarios de la herramienta TBA. Resumen de usuarios Nombre CIS1130IS07 Descripción TBA, 2012 Interesado Page 6 TBA Vision TBA_Visión_V1.0 Version: 1.0 Date: <27/ene/12> Diseñador Participante del proceso de diseño de los procesos de negocio, y directo responsable de que sus diseños sean entendidos en tiempo de desarrollo. Es el usuario que más beneficio encuentra con TBA, pues es aquel que usará los complementos del diseño de procesos de negocio aquí propuestos para mejorar su proceso de software Desarrollador Compañías desarrolladoras de soluciones BPM. Compañías desarrolladoras de soluciones BPM 3.3 Ambiente de usuario El usuario que hará uso de esta herramienta cuenta con ciertas restricciones tecnológicas de entrada: La suite BPM adquirida para el desarrollo es la suite BPM de Oracle [6]. El IDE en el cual se trabajará es aquel que soporta la suite BPM de Oracle (JDeveloper Studio [7]). Además de esto, y aunque no es requerido que sea así, la guía metodológica contenida en TBA es orientada a los procesos de negocio del sector financiero colombiano. La herramienta es indiferente al ciclo de vida de desarrollo por el cual opten los usuarios. 3.4 Perfiles de los interesados 3.4.1 Compañías del Sector financiero colombiano Representante Descripción Tipo Responsabilidades Criterio de éxito Participación Entregables adicionales 3.4.2 Las características del sector encontradas en el desarrollo del trabajo de grado del cual es parte esta herramienta. Sector de la economía, maduro, caracterizado por una total reglamentación en sus procesos de negocio. Experto en el negocio, que espera que el desarrollo de la solución BPM cumpla y respete el núcleo de su negocio. Brindar la información necesaria para el desarrollo de la herramienta en pro de sus propias características. Demostración de utilidad de la herramienta en el sector. Únicamente como insumo de información Ninguno Compañías desarrolladoras de soluciones BPM. Representante Descripción Tipo Responsabilidades Criterio de éxito Participación Entregables CIS1130IS07 Diseñadores y desarrolladores de las diferentes compañías que adquieran TBA. Usuarios que encontrarán en TBA un soporte al diseño de procesos de negocio. Perfil tecnológico, capacitado previamente en el uso de la suite BPM adquirida (al menos parcialmente). Realizar el diseño de procesos de negocio, y validar dicho proceso durante la etapa de desarrollo. En comparación a su proceso tradicional, encuentran en TBA un valor agregado que mejora el proceso de software, y el software resultante como tal. Usuario del sistema. Guía metodológica, fundamente de la herramienta TBA. TBA, 2012 Page 7 TBA Vision TBA_Visión_V1.0 Version: 1.0 Date: <27/ene/12> adicionales 3.5 Perfiles de Usuario 3.5.1 Diseñador Representante Descripción Tipo Responsabilidades Criterio de éxito Participación Entregables 3.5.2 Los diferentes diseñadores que posea la compañía que usa TBA. Usuario de TBA, que encuentra en TBA, herramientas adicionales para la especificación del diseño Con antecedentes técnicos, suficientes para usar la herramienta en conjunto con la suite BPM de elección de la compañía. Utilizar TBA para refinar el diseño de procesos de negocio según las directrices de la guía metodológica. Ven en TBA una mejora a la calidad del diseño que ellos están realizando. Principal usuario de la herramienta, que debe apoyar su diseño en las indicaciones que TBA brinda para la mejora del proceso de diseño. Guía Metodológica que acompaña la herramienta. Desarrollador Representante Descripción Tipo Responsabilidades Criterio de éxito Participación Entregables Los diferentes desarrolladores que posea la compañía que usa TBA Usuario de TBA, que encuentra en TBA, insumos adicionales para un desarrollo de calidad. Con antecedentes técnicos, suficientes para usar la herramienta en conjunto con la suite BPM de elección de la compañía. Utilizar TBA como insumo en el desarrollo de procesos de negocio Ve en TBA un enriquecimiento en la comunicación con los diseñadores con respecto a los aspectos claves del diseño generado por dichos diseñadores. Principal beneficiario de la herramienta, que debe apoyar su desarrollo según la información adicional que brindaron los diseñadores. Guía Metodológica que acompaña la herramienta. 3.6 Requerimientos de usuario/interesado Dado que el ciclo de vida de software es realizado en su totalidad por 1 persona, incluyendo la investigación que generaría los requerimientos, se opta por especificar los requerimientos en esta sección y prescindir de un documento de especificación de requerimientos (SRS: Software Requirement Specification [8]) más detallado debido a las restricciones de tiempo. 3.6.1 Obtención de Requerimientos La obtención de requerimientos se realiza con base en la guía metodológica definida para el trabajo de grado TBA, los requerimientos son obtenidos de esta excluyendo aquellas cosas que sean realizables por la suite BPM de Oracle. También se excluyen aquellas actividades que no tengan que ver con el modelado BPMN, pues según la misma metodología de Oracle para el uso de su Suite [9] el trabajo con JDeveloper inicia solo hasta que se deben realizar los modelos BPMN dicho esto, con base en una vista de casos de uso inicia el proceso de obtención de requerimientos. CIS1130IS07 TBA, 2012 Page 8 TBA Vision TBA_Visión_V1.0 Version: 1.0 Date: <27/ene/12> Ilustración 1: Modelo de casos de uso 3.6.2 Clasificación de requerimientos Como es normal, la primera diferenciación de requerimientos realizada, es entre requerimientos funcionales y no funcionales. 3.6.2.1 Requerimientos Funcionales La especificación de los requerimientos funcionales se basa en los casos de uso, los requerimientos encontrados son: No. Descripción Justificación Caso de Uso Requerimiento La herramienta debe permitir la Paso 4 de la guía metodológica: Documentar 1 documentación de una actividad Actividad interactiva. Actividades BPMN BPMN La herramienta debe permitir la Paso 4 de la guía metodológica: Documentar 2 documentación de una compuerta Compuerta Compuertas BPMN BPMN La herramienta debe permitir la Paso 4 de la guía metodológica: Documentar 3 documentación de Eventos BPMN Eventos. Eventos BPMN La herramienta debe permitir la Paso 4 de la guía metodológica: Consultar 4 consulta de la documentación de Actividad interactiva. documentación una actividad BPMN de componentes BPMN La herramienta debe permitir la Paso 4 de la guía metodológica: Consultar 5 consulta de la documentación de Compuerta documentación una compuerta BPMN de componentes BPMN CIS1130IS07 TBA, 2012 Page 9 TBA Vision TBA_Visión_V1.0 Version: 1.0 Date: <27/ene/12> 6 La herramienta debe permitir la consulta de la documentación de un evento BPMN Paso 4 de la guía metodológica: Eventos. 7 La herramienta debe permitir la documentación de un atributo de pantalla simulada La herramienta debe permitir la documentación de un botón de pantalla simulada La herramienta debe permitir la consulta de la guía metodológica Paso 5 de la guía metodológica 8 9 Paso 5 de la guía metodológica Objetivo General de TBA Consultar documentación de componentes BPMN Documentar Atributos de pantalla Documentar botones de pantalla Consulta de la guía metodológica 3.6.2.2 Requerimientos No-Funcionales La especificación de requerimientos no funcionales se clasifica de acuerdo a la clasificación FURPS+[10], excluyendo la F (funcionalidad) del acrónimo. U: Usabilidad. R: Confiabilidad. P: Desempeño. S: Soporte. +: Diseño, Implementación, Interface, Despliegue No. Requerimiento N1 N2 N3 Justificación FURPS+ La herramienta debe estar embebida en el IDE Jdeveloper. La herramienta debe ser desarrollada en Java La herramienta debe permitir el guardado de la documentación en un archivo XML. Memoria de trabajo de grado: 1.3 Justificación Lenguaje de desarrollo de extensiones en JDeveloper XML es un estándar ampliamente usado, para la persistencia de datos liviana, y la existencia de estándares en java para el manejo de este lo hace un candidato preciso para el guardado de la documentación La interdisciplinariedad de BPM, presenta la posibilidad de que parte del diseño se haga por personas sin conocimientos de ingeniería de software +: Despliegue La distribución de la herramienta debe ser instalable para una persona con conocimientos mínimos en computación N4 4. Descripción +: Implementación +: Despliegue +:Despliegue Resumen del producto TBA es una herramienta, que se desarrollará como una extensión a JDeveloper, para apoyar el diseño de procesos de negocio, las características propias del producto son: La posibilidad de documentar cada componente de un diagrama BPMN, con el fin de refinar la comunicación con los desarrolladores de software. La posibilidad de documentar las pantallas que se simulan en el proceso de validación de pantallas de modo que la generación de dichas pantallas en tiempo de ejecución se facilite. La inclusión de la guía metodológica en los archivos de ayuda del IDE para referencia en cualquier momento. CIS1130IS07 TBA, 2012 Page 10 TBA Vision TBA_Visión_V1.0 Version: 1.0 Date: <27/ene/12> La generación de dicha documentación en archivos XML un estándar ampliamente usado por la comunidad de desarrolladores en el mundo. La integración de la documentación del diseño BPMN y la facilidad de hacer una consulta sin tener que cambiar de ambiente, es un valor agregado a la comodidad del usuario, y a la eficiencia de este también. CIS1130IS07 TBA, 2012 Page 11