testing_temprano

La situación económica actual está originando que muchas empresas incorporen mecanismos y protocolos que hasta ahora no habían tenido en cuenta para aumentar su productividad y mejorar la calidad de sus productos y/o servicios , sin que ello suponga un incremento de sus costes de producción o desarrollo.

Una de las estrategias de gestión más utilizadas para alcanzar los objetivos anteriores es BPM («Business Process Management»). A lo largo de la última década, BPM se antoja y afianza cada vez más en esta línea. Esta es una de las conclusiones obtenidas de varios estudios de investigación es que implantar BPM dentro de una organización mejora el conocimiento general de la misma, de su funcionamiento interno – lo que se conoce como «Know-how» de la organización –, y de sus procesos de negocio.

Todo este conocimiento organizacional de la empresa permite optimizar, controlar y medir de una manera más eficaz la ejecución de cada proceso, lo que, en última instancia, supone a corto y medio plazo un incremento de su nivel de competitividad frente a su competencia.

Asimismo, multitud de entidades y organismos han motivado en la última década la aplicación de BPM como estrategia de gestión y actuación de mejora interna. Es el caso, por ejemplo, del PMI («Project Management Institute») que es una organización internacional sin ánimo de lucro afincada en Estados Unidos que asocia a profesionales relacionados con la gestión de proyectos y fomenta la dirección de proyectos desde una perspectiva centrada en procesos organizacionales; la Universidad Carnegie Mellon con su propuesta CMMi («Capability maturity model integration»), en la que define modelos de madurez para la mejora y evaluación de procesos; y la organización ISO con algunas de sus normas, como por ejemplo la ISO 9001:2008.
Siguiendo estas recomendaciones y con el propósito de mejorar su competitividad, la industria del software está comenzando a adoptar BPM como mecanismo para controlar y definir la construcción y gestión de software.

Sin embargo, la aplicación de la gestión de procesos dentro de las empresas enmarcadas en el negocio software es difícil y costosa de implantar adecuadamente debido a las características del proceso de software, es decir, su constante evolución, incorporación de nuevos ciclos de vida, nuevas tecnologías y grandes equipos de desarrollo y en muchos casos multidisciplinares, entre otros muchos aspectos. En consecuencia, es muy frecuente que la implantación del proceso global de mejora continua que fomenta BPM se circunscriba únicamente en la práctica a la definición formal de los procesos de software, realizando su posterior ejecución y orquestación – es decir, la gestión centralizada y coordinada de eventos durante la ejecución del proceso– de una manera manual y desconexa por parte de cada rol que participa en ellos. Todo esto hace que el seguimiento, control y medición de los procesos de software se conciba como una tarea particularmente costosa y compleja.

El trabajo de tesis presentado en este documento, se ve motivado por los problemas planteados anteriormente dentro de las organizaciones software para ejecutar y orquestar sus procesos. Sin embargo, aunque las razones principales que han originado este trabajo la se enmarcan dentro del contexto de las organizaciones software, la flexibilidad de la propuesta aquí desarrollada ha propiciado su aplicación y extrapolación a otros ámbitos, por ejemplo, en el área de la salud y, más concretamente, en el área de gestión de procesos clínicos.

Esta Tesis Doctoral se elabora como propuesta para resolver los problemas anteriores aprovechando las ventajas del paradigma MDE y tomándolo como vector director de la propuesta, con la finalidad de simplificar el mantenimiento de procesos software y hacerlos más efectivos. Los objetivos de la propuesta pasan por establecer los modelos o lenguajes específicos de dominio necesarios para tratar la definición y, ejecución y orquestación, de procesos software en un entorno de producción. Además, dicha propuesta contempla también la definición de una serie de protocolos sistemáticos de transformación entre los modelos.

Como finalidad final, esta tesis pretende que todos esos modelos, y sobre todo las técnicas para describirlos, sean instructivos y cognitivamente entendibles por usuarios con un perfil no técnico. El objetivo es fomentar y propiciar la participación del usuario final como entes imprescindibles, tanto para la definición como para la validación final de los modelos.
El cuerpo de la tesis pues, se cimenta sobre un conjunto de metamodelos teóricos y de mecanismos sistemáticos de derivación entre ellos. Esta estructura teórica encuentra su traslación práctica en el marco de trabajo PLM4BS («Process Lifecycle Management for Business-Software»): una herramienta CASE («Computer Aided Software Engineering», Ingeniería de Software Asistida por Computadora) que proporciona soporte para gestionar el ciclo de vida del proceso software en proyectos reales.

Desde la perspectiva del producto, PLM4BS se ha inspirado en el paradigma PLM («Product Life cycle Management») para dar su propia visión de aplicación al contexto del software. A pesar de que el software puede ser considerado como una entidad abstracta e intangible, es un producto en sí mismo y, de forma similar a los productos industriales, también está altamente relacionado con un ciclo de vida ingenieril.

En conclusión, Tesis Doctoral plantea una solución a un problema específico: establecer dentro de las organizaciones software, mecanismos eficaces, sistemáticos y automáticos que posibiliten la ejecución y orquestación de procesos software a partir de su definición, con el propósito de gestionar el ciclo de vida del desarrollo de productos software y de los procesos que intervienen durante la gestión de estos productos.

Este problema, identificado en un estudio del estado del arte de las tendencias actuales, se resuelve en un marco teórico que se implementa posteriormente en la herramienta CASE denominada PLM4BS, la cual ha sido que testada y validada en diversos proyectos reales de diferentes ámbitos de negocio.