Abstract. Much research work has been done on formalizing UML Activity Diagrams for process modeling to verify different kinds of soundness properties (deadlock, unreachable activities and so on) on process models. However, these works focus mainly on the control-flow aspects of the process and have done some assumptions on the precise execution semantics defined in natural language in the UML specification. In this paper, we define a first-order logic formalization of fUML (Foundational Subset of Executable UML), the official and precise operational semantics of UML, in order to apply model checking techniques and therefore verify the correctness of fUML-based process models. Our formalization covers the control-flow, data-flow, resources, and timing dimensions of processes in a unified way. A working implementation based on the Alloy language has been developed. The implementation showed us that many kinds of behavioral properties not commonly supported by other approaches and implying multiple dimensions of the process can be efficiently checked.
The increasing complexity of development projects requires methodological frameworks to support development processes. A method comes with a set of best practices that are enforced and instantiated into processes to drive the realization steps of the development project. However, those best practices come in the form of text in guides and books, or they are in the developer's mind. Thus, during an instantiation of a method, there is no guaranty to enforce its best practices into the process, which could impact negatively the criteria: cost, time, and quality. To cope with this issue, we propose a library of best practices to be checked for four popular methods: Unified Process, Extreme Programming, Scrum and Kanban. On top of this library we have built up a template-based constraint language and implemented it to express additional constraints on processes that are modeled with UML Activity Diagrams (AD). To apply formal verification, we leverage on a formalization based on fUML semantics. The evaluation showed the feasibility of our approach which covers all the aspects of the process, i.e.
With the widespread of the Model-Driven Development (MDD) and surfing on the success of the Unified Modeling Language (UML), software development is shifting from being codecentric to model-centric. Models become the key artefacts in the software development process. The success of the project relies on the quality of these models. Early detection of errors by debugging and testing these models is mandatory in order to reduce development cost, ensuring quality and preventing rework at later stages. The fUML standard defines the precise semantics for executing a subset of UML models by defining a virtual machine. The models are then directly executed without transformation. However, the virtual machine is defined to execute the model as an atomic action and does not fulfil the requirements for debugging it. We highlight in this paper the limit of the current specification of fUML (v1.0) and propose an approach for extending the virtual machine with the key functionality that enables debugging of fUML models. A working UML debugger prototype has been implemented and the use and evaluation of the approach are made on a case study.
Abstract. In this paper we present a framework for software process verification called Alloy4SPV which uses a subset of UML2 Activity Diagrams as a process modeling language. In order to achieve software process verification, we i) define a formal model of our process modeling language using first-order logic, ii) we give it a formal semantics based on the fUML standard, and iii) we implement this formalization using the Alloy language [1]. In order to ease its adoption by process modelers, our framework comes with a graphical tool and a ready to use and customizable set of software process properties. We categorize these properties into two categories, syntactical and behavioral. We extend the set of behavioral properties we identified from the literature with two new categories that we defined, namely, organizational properties which relate to resource management and planning during process execution and business properties which are project/process specific properties.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.