Abstract
UML (Unified Modelling Language) is the de facto standard for the development of software models. Static aspects of systems are mainly described with UML class diagrams. However, the behavioral aspects are often designed by UML state machine and activity diagrams. Due to the ambiguous semantics of UML diagrams, formal methods can be used to generate the corresponding formal specifications and then check their properties. In this paper, we opt for functional semantics of UML activity diagrams by means of FoCaLiZe, a proof based formal method. Thus, we generate formal specifications in order to detect eventual inconsistencies of UML activity diagrams using Zenon, the automatic theorem prover of FoCaLiZe. The proposed approach directly supports action constraints, activity partitions and the communication between structural (classes) and dynamic (activity diagrams) aspects.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
A usable language for the transformation of XML documents, recommended by the World Wide Web Consortium (W3C).
- 2.
References
OMG: UML: Unified Modeling Language, version 2.5, March 2015. http://www.omg.org/spec/UML/2.5/PDF
OMG: OCL: Object Constraint Language 2.4, January 2014. http://www.omg.org/spec/OCL
Younes, A.B., Ayed, L.J.B.: An UMLAD-to-event\(\_\)B refinement based approach for specifying and verifying workflow applications. In: Proceedings of the 13th International Conference on Information Integration and Web-based Applications and Services, pp. 523–526. ACM (2011)
Czopik, J., Košinár, M.A., Štolfa, J., Štolfa, S.: Formalization of software process using intuitive mapping of UML activity diagram to CPN. In: Kömer, P., Abraham, A., Snášel, V. (eds.) Proceedings of the Fifth International Conference on Innovations in Bio-Inspired Computing and Applications IBICA 2014. AISC, vol. 303, pp. 365–374. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-08156-4_36
Grønmo, R., Solheim, I.: Towards modeling web service composition in UML. In: Web Services: Modeling, Architecture and Infrastructure, WSMAI 2004 4, pp. 72–86 (2004)
de Aalst, W.M.P., et al.: Workflow verification: finding control-flow errors using Petri-Net-based techniques. In: van der Aalst, W., Desel, J., Oberweis, A. (eds.) Business Process Management. LNCS, vol. 1806, pp. 161–183. Springer, Heidelberg (2000). https://doi.org/10.1007/3-540-45594-9_11
Abrial, J.R.: The B-Book: Assigning Programs to Meanings. Cambridge University Press, Cambridge (2005)
Jackson, D.: Software Abstractions: Logic, Language and Anlysis. MIT Press, Cambridge (2012)
Murata, T.: Petri Nets: properties, analysis and applications. Proc. IEEE 77(4), 541–580 (1989)
Clavel, M., et al.: All About Maude - A High-Performance Logical Framework, How to Specify, Program, and Verify Systems in Rewriting Logic. LNCS, vol. 4350. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-71999-1
Eker, S., Meseguer, J., Sridharanarayanan, A.: The Maude LTL model checker. Electron. Notes Theor. Comput. Sci. 71, 162–187 (2004)
Messaoud, A., Choukri-Bey, B.Y., Renaud, R.: Generating FoCaLiZe specifications from UML models. In: Proceedings of the International Conference on Advanced Aspects of Software Engineering, ICAASE 2014, Constantine Algeria, pp. 157–164 (2014)
Abbas, M., Ben-Yelles, C.-B., Rioboo, R.: Modeling UML template classes with FoCaLiZe. In: Albert, E., Sekerinski, E. (eds.) IFM 2014. LNCS, vol. 8739, pp. 87–102. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-10181-1_6
Messaoud, A.: Using FoCaLiZe to check OCL constraints on UML classes. In: Proceedings of the International Conference on Information Technology for Organization Development, IT4OD 2014, Tebessa Algeria, pp. 31–38 (2014)
Messaoud, A., Choukri-Bey, B.Y., Renaud, R.: Modelling UML state machines with focalize. IJICT 13(1), 34–54 (2018)
Thérèse, H., Francois, P., Pierre, W., Damien, D.: FoCaLiZe: Tutorial and Reference Manual, version 0.9.2. CNAM-INRIA-LIP6 (2018). http://focalize.inria.fr
Ayrault, P., Thérèse, H., François, P.: Development life-cycle of critical software under focal. Electr. Notes Theor. Comput. Sci. 243, 15–31 (2009)
Coq: The Coq Proof Assistant, Tutorial and Reference Manual, Version 8.5.INRIAÂ - LIP - LRI - LIX - PPS (2016). Distribution: http://coq.inria.fr/
Bonichon, R., Delahaye, D., Doligez, D.: Zenon: an extensible automated theorem prover producing checkable proofs. In: Dershowitz, N., Voronkov, A. (eds.) LPAR 2007. LNCS (LNAI), vol. 4790, pp. 151–165. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-75560-9_13
Delahaye, D., Étienne, J., Donzeau-Gouge, V.: Producing UML models from focal specifications: an application to airport security regulations. In: 2nd IFIP/IEEE International Symposium on Theoretical Aspects of Software Engineering, pp. 121–124 (2008)
W3C: XSL Transformations (XSLT) Version 3.0, W3C Recommendation, October 2014 (2015). http://www.w3.org/TR/2014/WD-xslt-30-20141002/
Younes, A.B., Ayed, L.J.B.: Using UML activity diagrams and event B for distributed and parallel applications. In: 31st Annual International Computer Software and Applications Conference, COMPSAC 2007, vol. 1, pp. 163–170. IEEE (2007)
Younes, A.B., Hlaoui, Y.B., Ayed, L.J.B.: A meta-model Transformation from UML activity diagrams to Event-B models. In: Computer Software and Applications Conference Workshops (COMPSACW), pp. 740–745. IEEE (2014)
Laurent, Y., Bendraou, R., Baarir, S., Gervais, M.-P.: Alloy4SPV: a formal framework for software process verification. In: Cabot, J., Rubin, J. (eds.) ECMFA 2014. LNCS, vol. 8569, pp. 83–100. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-09195-2_6
Rahim, M., Kheldoun, A., Boukala-Ioualalen, M., Hammad, A.: Recursive ECATNets-based approach for formally verifying System Modelling Language activity diagrams. IET Softw. 9(5), 119–128 (2015)
Rahim, M., Hammad, A., Boukala-Ioualalen, M.: Towards the formal verification of SysML specifications: translation of activity diagrams into modular Petri Nets. In: 2015 3rd International Conference on Applied Computing and Information Technology/2nd International Conference on Computational Science and Intelligence (ACIT-CSI), pp. 509–516. IEEE (2015)
Czopik, J., Košinár, M.A., Štolfa, J., Štolfa, S.: Addition of static aspects to the intuitive mapping of UML activity diagram to CPN. In: Abraham, A., Krömer, P., Snasel, V. (eds.) Afro-European Conference for Industrial Advancement. AISC, vol. 334, pp. 77–86. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-13572-4_6
Kerkouche, E., Khalfaoui, K., Chaoui, A., Aldahoud, A.: UML activity diagrams and maude integrated modeling and analysis approach using graph transformation. In: Proceedings of ICIT 2015 The 7th International Conference on Information Technology, Amman, Jordan, pp. 515–521 (2015)
Jamal, M., Zafar, N.A.: Formalizing structural semantics of UML 2.5 activity diagram in Z notation. In: 2016 International Conference on Open Source Systems & Technologies (ICOSST), Lahore, Pakistan, pp. 66–71. IEEE (2016)
Daw, Z., Cleaveland, R.: Comparing model checkers for timed UML activity diagrams. Sci. Comput. Program. 111, 277–299 (2015)
Daw, Z., Mangino, J., Cleaveland, R.: UML-VT: A formal verification environment for UML activity diagrams. In: Proceedings of the MoDELS 2015 Demo and Poster Session co-located with ACM/IEEE 18th International Conference on Model Driven Engineering Languages and Systems (MoDELS 2015), Ottawa, Canada, 27 September 2015, pp. 48–51 (2015)
Gu, F., Zhang, X., Chen, M., Große, D., Drechsler, R.: Quantitative timing analysis of UML activity diagrams using statistical model checking. In: Proceedings of the 2016 Conference on Design, Automation & Test in Europe, EDA Consortium, pp. 780–785 (2016)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Abbas, M., Beggas, M., Boucherit, A. (2019). Formalizing and Verifying UML Activity Diagrams. In: Attiogbé, C., Ferrarotti, F., Maabout, S. (eds) New Trends in Model and Data Engineering. MEDI 2019. Communications in Computer and Information Science, vol 1085. Springer, Cham. https://doi.org/10.1007/978-3-030-32213-7_4
Download citation
DOI: https://doi.org/10.1007/978-3-030-32213-7_4
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-32212-0
Online ISBN: 978-3-030-32213-7
eBook Packages: Computer ScienceComputer Science (R0)