Navegación

Búsqueda

Búsqueda avanzada

Ensuring the Semantic Correctness of a BAUML Artifact-centric BPM (Summary)

Using models to represent business processes provides several advantages, such as being able to check the correctness of the processes before their implementation. In contrast to traditional process modeling approaches, the artifact-centric approach treats data as a key element of the process, also considering the tasks or activities that are performed in it. This paper presents a way to verify and validate the semantic correctness of an artifact-centric business process model defined using a combination of UML and OCL models – a BAUML model. To do this, we provide a method to translate all BAUML components into a set of logic formulas. The result of this translation ensures that the only changes allowed are those specified in the model, and that those changes are taking place according the order established by the model. Having obtained this logic representation, these models can be validated by any existing reasoning method able to deal with negation of derived predicates. Moreover, we show how to automatically generate the relevant tests to validate the models and we prove the feasibility of our approach.

An industrial case study on the use of UML in software maintenance and its perceived benefits and hurdles (RELEVANTE YA PUBLICADO)

UML is a commonly-used graphical language for the modelling ofsoftware. Works regarding UML’s effectiveness have studied projects thatdevelop software systems from scratch. Yet the maintenance of softwareconsumes a large share of the overall time and effort required to develop softwaresystems. This study, therefore, focuses on the use of UML in softwaremaintenance. We wish to elicit the practices of the software modelling usedduring maintenance in industry and understand what are perceived as hurdles andbenefits when using modelling. In order to achieve a high level of realism, weperformed a case study in a multinational company’s ICT department. Theanalysis is based on 31 interviews with employees who work on softwaremaintenance projects. The interviewees played different roles and providedcomplementary views about the use, hurdles and benefits of software modellingand the use of UML. Our study uncovered a broad range of modelling-relatedpractices, which are presented in a theoretical framework that illustrates howthese practices are linked to the specific goals and context of softwareengineering projects. We present a list of recommended practices that contributeto the increased effectiveness of software modelling. The use of softwaremodelling notations (like UML) is considered beneficial for softwaremaintenance but needs to be tailored to its context. Various practices thatcontribute to the effective use of modelling are commonly overlooked,suggesting that a more conscious holistic approach with which to integratemodelling practices into the overall software engineering approach is required.

Smart Bound Selection for the Verification of UML/OCL Class Diagrams (YA PUBLICADO)

Correctness of UML class diagrams annotated with OCL constraints can be checked using bounded verification techniques, e.g., SAT or constraint programming (CP) solvers. Bounded verification detects faults efficiently but, on the other hand, the absence of faults does not guarantee a correct behavior outside the bounded domain. Hence, choosing suitable bounds is a non-trivial process as there is a trade-off between the verification time (faster for smaller domains) and the confidence in the result (better for larger domains). Unfortunately, bounded verification tools provide little support in the bound selection process.In this paper, we present a technique that can be used to (i) automatically infer verification bounds whenever possible, (ii) tighten a set of bounds proposed by the user and (iii) guide the user in the bound selection process. This approach may increase the usability of UML/OCL bounded verification tools and improve the efficiency of the verification process.This paper has been published in IEEE Transactions on Software Engineering[http://dx.doi.org/10.1109/TSE.2017.2777830]

Un Método de Generación de Pruebas de Rendimiento para Múltiples Tecnologías desde Modelos UML con Anotaciones MARTE

Obtener el rendimiento esperado de un flujo de trabajo sería más fácil si cada tarea incluyera sus propias especificaciones. Sin embargo, normalmente sólo se dan requisitos globales de rendimiento, obligando a los diseñadores a inferir los requisitos locales a mano. En trabajos anteriores presentamos dos algoritmos que automáticamente inferían restricciones locales de rendimiento a partir de diagramas de actividad Unified Modelling Language anotados mediante el perfil Modelling and Analysis of Real-Time and Embedded Systems. En este trabajo presentamos un método para usar estas anotaciones para generar casos de prueba de rendimiento para múltiples tecnologías, relacionando el modelo de rendimiento con modelos de diseño e implementación. Mostramos cómo se podría aplicar a código Java y a composiciones de servicios mediante tecnologías existentes de código abierto, y estudiamos las tareas a realizar para su implementación y las similitudes y diferencias con otras propuestas.