Temporal plans for software architecture reconfiguration

  • Steffen ZiegertEmail author
  • Heike Wehrheim
Special Issue Paper


Self-adaptive systems have the ability to autonomously reconfigure their structure in order to meet specific goals. Such systems often include a planning component, which computes plans of reconfiguration steps. However, despite the fact that reconfigurations take time in reality, most planning approaches for self-adaptive systems are non-temporal. In this paper, we present a model-based approach to the generation of temporal reconfiguration plans. Besides allowing for durative reconfigurations, our technique also neatly solves concurrency issues arising in such a temporal setting. This provides the modeler with a clear and easy-to-use basis for modeling while at the same time giving an automatic method for plan construction.


Self-adaptive systems Graph transformation systems  Temporal planning 


  1. 1.
    Alur R, Dill DL (1994) A theory of timed automata. Theor Comput Sci 126:183–235MathSciNetCrossRefzbMATHGoogle Scholar
  2. 2.
    Becker B, Beyer D, Giese H, Klein F, Schilling D (2006) Symbolic invariant verification for systems with dynamic structural adaptation. In: 28th international conference on software engineering (ICSE 2006). ACM Press, New YorkGoogle Scholar
  3. 3.
    Becker S, Brenner C, Brink C, Dziwok S, Löffler R, Heinzemann C, Pohlmann U, Schäfer W, Suck J, Sudmann O (2012) The MechatronicUML design method - process, syntax, and semantics. Technical Report tr-ri-12-326, Software Engineering Group, Heinz Nixdorf Institute, University of PaderbornGoogle Scholar
  4. 4.
    Bernstein PA, Hadzilacos V, Goodman N (1987) Concurrency control and recovery in database systems. Addison-Wesley Publishing Company, BostonGoogle Scholar
  5. 5.
    Bradbury JS, Cordy JR, Dingel J, Wermelinger M (2004) A survey of self-management in dynamic software architecture specification. In: ACM SIGSOFT workshop on self-managed systems (WOSS 2004)Google Scholar
  6. 6.
    Chen Y, Wah BW, Hsu CW (2006) Temporal planning using subgoal partitioning and resolution in SGPlan. J Artif Intell Res 26:323–369Google Scholar
  7. 7.
    Coles AJ, Coles AI, Fox M, Long D (2010) Forward-chaining partial-order planning. In: 20th international conference on automated planning and scheduling (ICAPS 2010)Google Scholar
  8. 8.
    Cushing W, Kambhampati S, Mausam Weld DS (2007) When is temporal planning really temporal? In: 20th international joint conference on artificial intelligence (IJCAI 2007). Morgan Kaufmann Publishers, San Francisco, pp 1852–1859Google Scholar
  9. 9.
    von Detten M, Heinzemann C, Platenius MC, Rieke J, Travkin D, Hildebrandt S (2012) Story diagrams–syntax and semantics. Technical Report tr-ri-12-324, Software Engineering Group, Heinz Nixdorf Institute, University of PaderbornGoogle Scholar
  10. 10.
    Eckardt T, Heinzemann C, Henkler S, Hirsch M, Priesterjahn C, Schäfer W (2013) Modeling and verifying dynamic communication structures based on graph transformations. Comput Sci Res Dev 28(1):3–22CrossRefGoogle Scholar
  11. 11.
    Edelkamp S, Rensink A (2007) Graph transformation and ai planning. In: 2nd international competition on knowledge engineering for planning and scheduling (ICKEPS 2007)Google Scholar
  12. 12.
    Ehrig H, Heckel R, Korff M, Löwe M, Ribeiro L, Wagner A, Corradini A (1997) Algebraic approaches to graph transformation II: single pushout approach and comparison with double pushout approach. In: Rozenberg G (ed) Handbook of graph grammars and computing by graph transformation. Foundations, vol 1, Chap 4, pp 247–312. World Scientific Publishing, SingaporeGoogle Scholar
  13. 13.
    Estler HC, Wehrheim H (2011) Heuristic search-based planning for graph transformation systems. In: ICAPS workshop on knowledge engineering for planning and scheduling (KEPS 2011), pp 54–61Google Scholar
  14. 14.
    Fischer T, Niere J, Torunski L, Zündorf A (2000) Story diagrams: a new graph rewrite language based on the Unified Modeling Language and Java. In: Ehrig H, Engels G, Kreowski HJ, Rozenberg G (eds) 6th international workshop on theory and application of graph transformations (TAGT 1998). Lecture notes in computer science (LNCS), vol 1764. Springer, Berlin, pp 296–309Google Scholar
  15. 15.
    Fox M, Long D (2003) PDDL2.1: an extension to PDDL for expressing temporal planning domains. J Artif Intell Res 20:61–124Google Scholar
  16. 16.
    Georgiadis I, Magee J, Kramer J (2002) Self-organising software architectures for distributed systems. In: Workshop on self-healing systems (WOSS 2002), pp 33–38Google Scholar
  17. 17.
    Heinzemann C, Henkler S (2011) Timed story driven modeling. Technical Report tr-ri-11-326, Software Engineering Group, Heinz Nixdorf Institute, University of PaderbornGoogle Scholar
  18. 18.
    Hoffmann J, Weber I, Kraft FM (2012) SAP speaks PDDL: exploiting a software-engineering model for planning in business process management. J Artif Intell Res 44(1):587–632zbMATHGoogle Scholar
  19. 19.
    Kramer J, Magee J (2007) Self-managed systems: an architectural challenge. In: Workshop on the future of software engineering (FOSE 2007). IEEE Computer Society, Washington, DC, pp 259–268Google Scholar
  20. 20.
    Le Métayer D (1998) Describing software architecture styles using graph grammars. IEEE Trans Softw Eng 24(7):521–533CrossRefGoogle Scholar
  21. 21.
    Lückel J, Hestermeyer T, Liu-Henke X (2001) Generalization of the cascade principle in view of a structured form of mechatronic systems. In: IEEE/ASME international conference on advanced intelligent mechatronics (AIM 2001), pp 123–128Google Scholar
  22. 22.
    Meijer R (2012) PDDL planning problems and GROOVE graph transformations: combining two worlds with a translator. In: 17th Twente student conference on IT. University of TwenteGoogle Scholar
  23. 23.
    Object Management Group (OMG) (2009) Unified Modeling Language (UML) superstructure specification—version 2.2. Technical Report formal/2009-02-02, Object Management Group Inc.Google Scholar
  24. 24.
    Object Management Group (OMG) (2011) Meta object facility (MOF) 2.0 query/view/transformation specification—version 1.1. Technical Report formal/2011-01-01, Object Management Group Inc.Google Scholar
  25. 25.
    Plump D, Steinert S (2010) The semantics of graph programs. In: Mackie I, Moreira AM (eds) 10th international workshop on rule-based programming (RULE 2009), electronic proceedings in theoretical computer science (EPTCS), vol 21, pp 27–38Google Scholar
  26. 26.
    Röhs M, Wehrheim H (2010) Sichere Konfigurationsplanung selbst-adaptierender Systeme durch Model Checking. In: Gausemeier J, Rammig F, Schäfer W, Trächtler A (eds) 9. Paderborner Workshop Entwurf mechatronischer Systeme, HNI-Verlagsschriftenreihe, vol 272, pp 253–265. Heinz Nixdorf InstitutGoogle Scholar
  27. 27.
    Simpson RM, Kitchin DE, McCluskey TL (2007) Planning domain definition using GIPO. Knowl Eng Rev 22(2):117–134CrossRefGoogle Scholar
  28. 28.
    Steenken D, Wehrheim H, Wonisch D (2011) Sound and complete abstract graph transformation. In: 14th Brazilian symposium on formal methods (SBMF 2011), pp 92–107Google Scholar
  29. 29.
    Tichy M, Henkler S, Holtmann J, Oberthür S (2008) Component story diagrams: a transformation language for component structures in mechatronic systems. In: 4th workshop on object-oriented modeling of embedded real-time systems (OMER 4), pp 27–38Google Scholar
  30. 30.
    Tichy M, Klöpper B (2011) Planning self-adaptation with graph transformations. In: Schürr A, Varró D, Varró G (eds) International symposium on applications of graph transformation with industrial relevance (AGTIVE 2011). Lecture notes in computer science (LNCS), vol 7233. Springer, BerlinGoogle Scholar
  31. 31.
    Vaquero TS, Silva JR, Ferreira M, Tonidandel F, Beck JC (2009) From requirements and analysis to PDDL in itSIMPLE3.0. In: 19th international conference on automated planning and scheduling (ICAPS 2009)Google Scholar
  32. 32.
    Vaquero TS, Tonaco R, Costa C, Tonidandel F, Silva JR, Beck JC (2012) itSIMPLE4.0: enhancing the modeling experience of planning problems. In: ICAPS 2012 system demonstrations, pp 11–14Google Scholar
  33. 33.
    Vidal V (2011) YAHSP2: keep it simple, stupid. In: 7th international planning competition (IPC 2011), pp 83–90Google Scholar
  34. 34.
    Wermelinger M, Fiadeiro JL (2002) A graph transformation approach to software architecture reconfiguration. Sci Comput Program 44(2):133–155CrossRefzbMATHGoogle Scholar
  35. 35.
    Ziegert S, Heinzemann C, (2013) Durative graph transformation rules for modelling real-time reconfiguration. In: 10th international colloquium on theoretical aspects of computing (ICTAC, (2013) Lecture notes in computer science (LNCS), vol 8049. Springer, BerlinGoogle Scholar
  36. 36.
    Ziegert S, Wehrheim H (2013) Temporal reconfiguration plans for self-adaptive systems. In: Kowalewski S, Rumpe B (eds) Software engineering (SE 2013). Lecture notes in informatics (LNI). Gesellschaft für Informatik e.V. (GI), BonnGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  1. 1.Department of Computer ScienceUniversity of PaderbornPaderbornGermany

Personalised recommendations