skip to main content
10.1145/3241403.3241445acmotherconferencesArticle/Chapter ViewAbstractPublication PagesecsaConference Proceedingsconference-collections
research-article

A high-level petri net-based formal model of distributed self-adaptive systems

Published:24 September 2018Publication History

ABSTRACT

Engineering complex distributed self-adaptive systems is a challenging task due to multiple interacting distributed components that monitor and adapt the managed parts operating in a dynamic environment. Therefore, formal methods able to specify and analyze the behavior of decentralized adaptation control by multiple interacting MAPE-K (Monitor, Analyze, Plan, and Execute over a shared Knowledge) components are highly demanded.

In this paper we introduce a formal framework for modeling and analyzing self-adaptive systems with decentralized adaptation control. The framework makes use of High-Level Petri nets which represents a sound and expressive formal model for distributed discrete-event systems. We show how to specify in a natural way structural changes that are likely to occur in adaptable and evolvable distributed applications. Our approach supports validation and verification activities to check correctness of the MAPE components. As a proof-of-concepts, we show how to use our framework to model and analyze a self-optimizing cluster management system.

References

  1. Paolo Arcaini, Elvinia Riccobene, and Patrizia Scandurra. 2017. Formal Design and Verification of Self-Adaptive Systems with Decentralized Control. ACM Trans. Auton. Adapt. Syst. 11, 4, Article 25 (Jan. 2017), 35 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Björn Bartels and Moritz Kleine. 2011. A CSP-based framework for the specification, verification, and implementation of adaptive systems. In 2011 ICSE Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2011, Waikiki, Honolulu, HI, USA, May 23-24, 2011, Holger Giese and Betty H. C. Cheng (Eds.). ACM, 158--167. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Yuriy Brun, Giovanna Marzo Serugendo, Cristina Gacek, Holger Giese, Holger Kienle, Marin Litoiu, Hausi Müller, Mauro Pezzè, and Mary Shaw. 2009. Software Engineering for Self-Adaptive Systems. Springer-Verlag, Berlin, Heidelberg, Chapter Engineering Self-Adaptive Systems Through Feedback Loops, 48--70. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Lawrence Cabac, Michael Duvigneau, Daniel Moldt, and Heiko Rölke. 2005. Modeling dynamic architectures using nets-within-nets. In Proceedings of the 26th International Conference on Applications and Theory of Petri Nets. Springer-Verlag, Berlin, Heidelberg, 148--167. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Matteo Camilli. 2014. Formal Verification Problems in a Big Data World: Towards a Mighty Synergy. In Companion Proceedings of the 36th International Conference on Software Engineering (ICSE Companion 2014). ACM, New York, NY, USA, 638--641. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Matteo Camilli, Carlo Bellettini, Lorenzo Capra, and Mattia Monga. 2018. A Formal Framework for Specifying and Verifying Microservices Based Process Flows. In Software Engineering and Formal Methods, Antonio Cerone and Marco Roveri (Eds.). Springer International Publishing, Cham, 187--202.Google ScholarGoogle Scholar
  7. Matteo Camilli, Angelo Gargantini, and Patrizia Scandurra. 2015. Specifying and verifying real-time self-adaptive systems. In 2015 IEEE 26th International Symposium on Software Reliability Engineering (ISSRE). 303--313. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Matteo Camilli, Angelo Gargantini, and Patrizia Scandurra. 2018. Zone-based formal specification and timing analysis of real-time self-adaptive systems. Science of Computer Programming 159 (2018), 28 -- 57.Google ScholarGoogle ScholarCross RefCross Ref
  9. Lorenzo Capra and Matteo Camilli. 2018. Towards Evolving Petri Nets: a Symmetric Nets-based Framework. IFAC-PapersOnLine 51, 7 (2018), 480 -- 485. 14th IFAC Workshop on Discrete Event Systems WODES 2018.Google ScholarGoogle ScholarCross RefCross Ref
  10. Lorenzo Capra and Walter Cazzola. 2006. A Petri-Net Based Reflective Framework for the Evolution of Dynamic Systems. Electron. Notes Theor. Comput. Sci. 159 (May 2006), 41--59. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Rogério de Lemos, David Garlan, Carlo Ghezzi, and Holger Giese (Eds.). 2017. Software Engineering for Self-Adaptive Systems III. Assurances - International Seminar, Dagstuhl Castle, Germany, December 15-19, 2013, Revised Selected and Invited Papers. Lecture Notes in Computer Science, Vol. 9640. Springer.Google ScholarGoogle Scholar
  12. Rogério de Lemos, Holger Giese, Hausi A. Müller, and Mary Shaw (Eds.). 2013. Software Engineering for Self-Adaptive Systems II - International Seminar, Dagstuhl Castle, Germany, October 24-29, 2010 Revised Selected and Invited Papers. Lecture Notes in Computer Science, Vol. 7475. Springer.Google ScholarGoogle Scholar
  13. Łukasz Fronc and Alexandre Duret-Lutz. 2013. LTL Model Checking with Neco. In Automated Technology for Verification and Analysis, Dang Van Hung and Mizuhito Ogawa (Eds.). Springer International Publishing, Cham, 451--454.Google ScholarGoogle Scholar
  14. Kurt Jensen and Grzegorz Rozenberg (Eds.). 1991. High-level Petri Nets: Theory and Application. Springer-Verlag, London, UK. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Emanuela Merelli, Nicola Paoletti, and Luca Tesei. 2012. A multi-level model for self-adaptive systems. In Proceedings 11th International Workshop on Foundations of Coordination Languages and Self Adaptation, FOCLASA 2012, Newcastle, U.K., September 8, 2012. (EPTCS), Natallia Kokash and António Ravara (Eds.), Vol. 91. 112--126.Google ScholarGoogle ScholarCross RefCross Ref
  16. Franck Pommereau. 2015. SNAKES: a Flexible High-Level Petri Nets Library. In Proceedings of PETRI NETS'15 (LNCS), Vol. 9115. Springer, 254--265.Google ScholarGoogle Scholar
  17. Mazeiar Salehie and Ladan Tahvildari. 2009. Self-adaptive Software: Landscape and Research Challenges. ACM Trans. Auton. Adapt. Syst. 4, 2, Article 14 (May 2009), 42 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Rüdiger Valk. 2003. Object Petri Nets: Using the Nets-within-Nets Paradigm. In Lectures on Concurrency and Petri Nets, Advances in Petri Nets (Lecture Notes in Computer Science), Jörg Desel, Wolfgang Reisig, and Grzegorz Rozenberg (Eds.), Vol. 3098. Springer, 819--848.Google ScholarGoogle Scholar
  19. Danny Weyns, M. Usman Iftikhar, Didac Gil de la Iglesia, and Tanvir Ahmad. 2012. A Survey of Formal Methods in Self-adaptive Systems. In Proceedings of the Fifth International C* Conference on Computer Science and Software Engineering (C3S2E '12). ACM, New York, NY, USA, 67--79. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. R. Wolfgang. 1985. Petri Nets: An Introduction. Springer-Verlag New York, Inc., New York, NY, USA. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. A high-level petri net-based formal model of distributed self-adaptive systems

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Other conferences
        ECSA '18: Proceedings of the 12th European Conference on Software Architecture: Companion Proceedings
        September 2018
        325 pages
        ISBN:9781450364836
        DOI:10.1145/3241403

        Copyright © 2018 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 24 September 2018

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        Overall Acceptance Rate48of72submissions,67%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader