Formalization of fUML: An Application to Process Verification
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.
KeywordsFormalization Model-checking fUML Alloy
Unable to display preview. Download preview PDF.
- 5.Russell, N., van der Aalst, W.M., Ter Hofstede, A.H., Wohed, P.: On the suitability of uml 2.0 activity diagrams for business process modelling In: Proceedings of the 3rd Asia-Pacific Conference on Conceptual Modelling, vol. 53Google Scholar
- 7.Dong, Y., ShenSheng, Z.: Using π-calculus to formalize uml activity diagram for business process modeling. In: ECBS, pp. 47–54. IEEE (2003)Google Scholar
- 8.Eshuis, R.: Symbolic model checking of uml activity diagrams. TOSEM (2006)Google Scholar
- 9.Guelfi, N., Mammar, A.: A formal semantics of timed activity diagrams and its promela translation. In: APSEC. IEEE (2005)Google Scholar
- 10.OMG: Uml version 2.4.1 (2011), http://www.omg.org/spec/UML/
- 11.OMG: Fuml version 1.1 (2013), http://www.omg.org/spec/FUML/
- 13.Jackson, D.: Software Abstractions: logic, language and analysis. MIT Press (2011)Google Scholar
- 14.Pnueli, A.: The temporal logic of programs. In: 18th Annual Symposium on Foundations of Computer Science, pp. 46–57. IEEE (1977)Google Scholar
- 16.Jung, H.T., Joo, S.H.: Transformation of an activity model into a colored petri net model. In: TISC, pp. 32–37. IEEE (2010)Google Scholar
- 17.Motogna, S., Cr Ciun, F., Lazar, I.: Pârv: Formal definition of fuml in k-framework. Studia Universitatis Babes-Bolyai, Informatica 58(3) (2013)Google Scholar