Representación de los principios del manifiesto ágil en el núcleo de Semat (2017)
El manifiesto ágil busca un balance entre la satisfacción del cliente, las entregas tempranas y continuas de producto funcionando y la adaptación al cambio. El manifiesto ágil contiene cuatro valores y 12 principios que guían los métodos de desarrollo ágil de software y se plantea como una alternativa a los métodos basados en planes. Semat (Software Engineering Method and Theory) es una iniciativa que nace como respuesta a un llamado a la acción para resolver muchos problemas que se tienen en la ingeniería de software, como la carencia de una base teórica sólida, la separación de la industria y la academia y la carencia de evaluación y validaciones experimentales creíbles. Como resultado de la iniciativa se propone un estándar para poder representar cualquier esfuerzo de la ingeniería de software en un terreno común, con elementos ampliamente aceptados, validados y que se pueden extender a usos específicos. Con el creciente uso de los métodos ágiles de desarrollo, varios autores intentan aplicar los principios del manifiesto a diferentes campos como el desarrollo de sistemas embebidos, el proceso de líneas de productos de software o la transición de métodos tradicionales a métodos ágiles. En estas aplicaciones se evidencia que los principios del manifiesto ágil se aplican de forma subjetiva, ya que se enuncian en lenguaje natural y no se representan en un lenguaje formal y estándar en la ingeniería de software y, debido a su falta de representación en un terreno común de la ingeniería de software, son difíciles de llevar del contexto de desarrollo ágil a otros diferentes contextos. En esta Tesis de Maestría se propone una representación de los 12 principios del manifiesto ágil, haciendo uso de los elementos del núcleo de Semat y, así, poder representarlos en un terreno común, para que se puedan implementar en diferentes contextos, restando subjetividad a los principios y pudiendo evaluar diferentes prácticas y métodos respecto de los principios del manifiesto ágil. Dado que el núcleo de Semat carece de mecanismos para expresar restricciones, se propone una nueva sintaxis basada en OCL (en inglés, lenguaje de restricción de objetos). Además, se propone una validación por medio de representaciones en Semat existentes sobre métodos ágiles de desarrollo.