A Formal Model of Object Mobility in Resource-Restricted Deployment Scenarios

  • Einar Broch Johnsen
  • Rudolf Schlatte
  • Silvia Lizeth Tapia Tarifa
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7253)

Abstract

Software today is often developed for deployment on different architectures, ranging from sequential machines via multicore and distributed architectures to the cloud. In order to apply formal methods, models of such systems must be able to capture different deployment scenarios. For this purpose, it is desirable to express aspects of low-level deployment at the abstraction level of the modeling language. This paper considers formal executable models of concurrent objects executing with user-defined cost models. Their execution is restricted by deployment components which reflect the execution capacity of groups of objects between observable points in time. We model strategies for object relocation between components. A running example demonstrates how activity on deployment components causes congestion and how object relocation can alleviate this congestion. We analyze the average behavior of models which vary in the execution capacity of deployment components and in object relocation strategies by means of Monte Carlo simulations.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Agha, G.A.: ACTORS: A Model of Concurrent Computations in Distributed Systems. The MIT Press, Cambridge (1986)Google Scholar
  2. 2.
    Ahrendt, W., Dylla, M.: A system for compositional verification of asynchronous objects. Science of Computer Programming, http://dx.doi.org/10.1016/j.scico.2010.08.003 (available online August 2010)
  3. 3.
    Albert, E., Arenas, P., Genaim, S., Puebla, G.: Closed-form upper bounds in static cost analysis. Journal of Automated Reasoning 46, 161–203 (2011)MathSciNetMATHCrossRefGoogle Scholar
  4. 4.
    Albert, E., Genaim, S., Gómez-Zamalloa, M., Johnsen, E.B., Schlatte, R., Tapia Tarifa, S.L.: Simulating Concurrent Behaviors with Worst-Case Cost Bounds. In: Butler, M., Schulte, W. (eds.) FM 2011. LNCS, vol. 6664, pp. 353–368. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  5. 5.
    Armstrong, J.: Programming Erlang: Software for a Concurrent World. Pragmatic Bookshelf (2007)Google Scholar
  6. 6.
    Balsamo, S., Marco, A.D., Inverardi, P., Simeoni, M.: Model-based performance prediction in software development: A survey. IEEE Transactions on Software Engineering 30(5), 295–310 (2004)CrossRefGoogle Scholar
  7. 7.
    Barbanera, F., Bugliesi, M., Dezani-Ciancaglini, M., Sassone, V.: Space-aware ambients and processes. Theoretical Computer Science 373(1-2), 41–69 (2007)MathSciNetMATHCrossRefGoogle Scholar
  8. 8.
    Bjørk, J., Johnsen, E.B., Owe, O., Schlatte, R.: Lightweight time modeling in Timed Creol. Electronic Proceedings in Theoretical Computer Science 36, 67–81 (2010); Proceedings of 1st Intl. Workshop on Rewriting Techniques for Real-Time Systems (RTRTS 2010)CrossRefGoogle Scholar
  9. 9.
    Caromel, D., Henrio, L.: A Theory of Distributed Object. Springer (2005)Google Scholar
  10. 10.
    Chakrabarti, A., de Alfaro, L., Henzinger, T.A., Stoelinga, M.: Resource Interfaces. In: Alur, R., Lee, I. (eds.) EMSOFT 2003. LNCS, vol. 2855, pp. 117–133. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  11. 11.
    Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Meseguer, J., Talcott, C.: All About Maude - A High-Performance Logical Framework. LNCS, vol. 4350. Springer, Heidelberg (2007)MATHGoogle Scholar
  12. 12.
    de Boer, F.S., Clarke, D., Johnsen, E.B.: A Complete Guide to the Future. In: De Nicola, R. (ed.) ESOP 2007. LNCS, vol. 4421, pp. 316–330. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  13. 13.
    Epifani, I., Ghezzi, C., Mirandola, R., Tamburrelli, G.: Model evolution by run-time parameter adaptation. In: Proc. 31st Intl. Conf. on Software Engineering (ICSE 2009), pp. 111–121. IEEE (2009)Google Scholar
  14. 14.
    Fersman, E., Krcál, P., Pettersson, P., Yi, W.: Task automata: Schedulability, decidability and undecidability. Information and Computation 205(8), 1149–1172 (2007)MathSciNetMATHCrossRefGoogle Scholar
  15. 15.
    Haller, P., Odersky, M.: Scala actors: Unifying thread-based and event-based programming. Theoretical Computer Science 410(2-3), 202–220 (2009)MathSciNetMATHCrossRefGoogle Scholar
  16. 16.
    Happe, J., Koziolek, H., Reussner, R.: Parametric performance contracts for software components with concurrent behaviour. In: Proc. Third Intl. Workshop on Formal Aspects of Component Software (FACS 2006). Electronic Notes in Theoretical Computer Science, vol. 182, pp. 91–106 (2007)Google Scholar
  17. 17.
    Hennessy, M.: A Distributed Pi-Calculus. Cambridge University Press (2007)Google Scholar
  18. 18.
    Igarashi, A., Kobayashi, N.: Resource usage analysis. ACM Transactions on Programming Languages and Systems 27(2), 264–313 (2005)CrossRefGoogle Scholar
  19. 19.
    Jaghoori, M.M., de Boer, F.S., Chothia, T., Sirjani, M.: Schedulability of asynchronous real-time concurrent objects. Journal of Logic and Algebraic Programming 78(5), 402–416 (2009)MathSciNetMATHCrossRefGoogle Scholar
  20. 20.
    Johnsen, E.B., Hähnle, R., Schäfer, J., Schlatte, R., Steffen, M.: ABS: A Core Language for Abstract Behavioral Specification. In: Aichernig, B.K., de Boer, F.S., Bonsangue, M.M. (eds.) FMCO 2010. LNCS, vol. 6957, pp. 142–164. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  21. 21.
    Johnsen, E.B., Owe, O.: An asynchronous communication model for distributed concurrent objects. Software and Systems Modeling 6(1), 35–58 (2007)Google Scholar
  22. 22.
    Johnsen, E.B., Owe, O., Schlatte, R., Tapia Tarifa, S.L.: Dynamic Resource Reallocation Between Deployment Components. In: Dong, J.S., Zhu, H. (eds.) ICFEM 2010. LNCS, vol. 6447, pp. 646–661. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  23. 23.
    Johnsen, E.B., Owe, O., Schlatte, R., Tapia Tarifa, S.L.: Validating Timed Models of Deployment Components with Parametric Concurrency. In: Beckert, B., Marché, C. (eds.) FoVeOOS 2010. LNCS, vol. 6528, pp. 46–60. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  24. 24.
    Katelman, M., Meseguer, J., Hou, J.: Redesign of the LMST Wireless Sensor Protocol Through Formal Modeling and Statistical Model Checking. In: Barthe, G., de Boer, F.S. (eds.) FMOODS 2008. LNCS, vol. 5051, pp. 150–169. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  25. 25.
    Lüttgen, G., Vogler, W.: Bisimulation on speed: A unified approach. Theoretical Computer Science 360(1-3), 209–227 (2006)MathSciNetMATHCrossRefGoogle Scholar
  26. 26.
    Meseguer, J.: Conditional rewriting logic as a unified model of concurrency. Theoretical Computer Science 96, 73–155 (1992)MathSciNetMATHCrossRefGoogle Scholar
  27. 27.
    De Nicola, R., Ferrari, G.-L., Montanari, U., Pugliese, R., Tuosto, E.: A Process Calculus for QoS-Aware Applications. In: Jacquet, J.-M., Picco, G.P. (eds.) COORDINATION 2005. LNCS, vol. 3454, pp. 33–48. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  28. 28.
    Petriu, D.B., Woodside, C.M.: An intermediate metamodel with scenarios and resources for generating performance models from UML designs. Software and System Modeling 6(2), 163–184 (2007)CrossRefGoogle Scholar
  29. 29.
    Plotkin, G.D.: A structural approach to operational semantics. Journal of Logic and Algebraic Programming 60-61, 17–139 (2004)Google Scholar
  30. 30.
    Schäfer, J., Poetzsch-Heffter, A.: JCoBox: Generalizing Active Objects to Concurrent Components. In: D’Hondt, T. (ed.) ECOOP 2010. LNCS, vol. 6183, pp. 275–299. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  31. 31.
    Verhoef, M., Larsen, P.G., Hooman, J.: Modeling and Validating Distributed Embedded Real-Time Systems with VDM++. In: Misra, J., Nipkow, T., Sekerinski, E. (eds.) FM 2006. LNCS, vol. 4085, pp. 147–162. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  32. 32.
    Welc, A., Jagannathan, S., Hosking, A.: Safe futures for Java. In: Proc. Object Oriented Programming, Systems, Languages, and Applications (OOPSLA 2005), pp. 439–453. ACM Press, New York (2005)Google Scholar
  33. 33.
    Yacoub, S.M.: Performance Analysis of Component-Based Applications. In: Chastek, G.J. (ed.) SPLC 2002. LNCS, vol. 2379, pp. 299–315. Springer, Heidelberg (2002)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Einar Broch Johnsen
    • 1
  • Rudolf Schlatte
    • 1
  • Silvia Lizeth Tapia Tarifa
    • 1
  1. 1.Department of InformaticsUniversity of OsloNorway

Personalised recommendations